Intellij IDEA神器居然還有這些小技巧
概述
Intellij IDEA
真是越用越覺得它強大,它總是在我們寫代碼的時候,不時給我們來個小驚喜。出於對Intellij IDEA
的喜愛,我決定寫一個與其相關的專欄或者系列,把一些好用的Intellij IDEA
技巧分享給大家。本文是這個系列的第一篇,主要介紹一些你可能不知道的但是又實用的小技巧。
我最愛的【演出模式】
我們可以使用【Presentation Mode】,將IDEA
弄到最大,可以讓你只關註一個類裏面的代碼,進行毫無幹擾的coding
。
可以使用Alt+V
快捷鍵,彈出View
視圖,然後選擇Enter Presentation Mode
。效果如下:
這個模式的好處就是,可以讓你更加專註,因為你只能看到特定某個類的代碼。可能讀者會問,進入這個模式後,我想看其他類的代碼怎麽辦?這個時候,就要考驗你快捷鍵的熟練程度了。你可以使用CTRL+E
CTRL+N
和CTRL+SHIFT+N
定位文件。
如何退出這個模式呢?很簡單,使用ALT+V
彈出view視圖,然後選擇Exit Presentation Mode
即可。但是我強烈建議你不要這麽做,因為你是可以在Enter Presentation Mode
模式下在IDEA
裏面做任何事情的。當然前提是,你對IDEA
足夠熟練。
神奇的Inject language
如果你使用IDEA
在編寫JSON
字符串的時候,然後要一個一個\
去轉義雙引號的話,就實在太不應該了,又煩又容易出錯。在IDEA
可以使用Inject language
幫我們自動轉義雙引號。
先將焦點定位到雙引號裏面,使用alt+enter
inject language
視圖,並選中 Inject language or reference
。
選擇後,切記,要直接按下enter
回車鍵,才能彈出inject language
列表。在列表中選擇 json
組件。
選擇完後。鼠標焦點自動會定位在雙引號裏面,這個時候你再次使用alt+enter
就可以看到
選中Edit JSON Fragment
並回車,就可以看到編輯JSON
文件的視圖了。
可以看到IDEA
確實幫我們自動轉義雙引號了。如果要退出編輯JSON
信息的視圖,只需要使用ctrl+F4
快捷鍵即可。
Inject language
可以支持的語言和操作多到你難以想象,讀者可以自行研究。
使用快捷鍵移動分割線
假設有下面的場景,某個類的名字在project
視圖裏被擋住了某一部分。
你想完整的看到類的名字,該怎麽做。一般都是使用鼠標來移動分割線,但是這樣子效率太低了。可以使用alt+1
把鼠標焦點定位到project
視圖裏,然後直接使用ctrl+shift+左右箭頭
來移動分割線。
ctrl+shift+enter不只是用來行尾加分號的
ctrl+shift+enter
其實是表示為您收尾
的意思,不只是用來給代碼加分號的。比如說:
這段代碼,我們還需要為if語句加上大括號才能編譯通過,這個時候你直接輸入ctrl+shift+enter
,IDEA
會自動幫你收尾,加上大括號的。
不要動不動就使用IDEA的重構功能
IDEA
的重構功能非常強大,但是也有時候,在單個類裏面,如果只是想批量修改某個文本,大可不必使用到重構的功能。比如說:
上面的代碼中,有5個地方用到了rabbitTemplate文本,如何批量修改呢? 首先是使用ctrl+w
選中rabbitTemplate
這個文本,然後依次使用5次alt+j
快捷鍵,逐個選中,這樣五個文本就都被選中並且高亮起來了,這個時候就可以直接批量修改了。
去掉導航欄
去掉導航欄,因為平時用的不多。
可以把紅色的導航欄去掉,讓IDEA
顯得更加幹凈整潔一些。使用alt+v
,然後去掉Navigation bar
即可。去掉這個導航欄後,如果你偶爾還是要用的,直接用alt+home
就可以臨時把導航欄顯示出來。
如果想讓這個臨時的導航欄消失的話,直接使用esc
快捷鍵即可。
把鼠標定位到project視圖裏
當工程裏的包和類非常多的時候,有時候我們想知道當前類在project視圖裏是處在哪個位置。
上面圖中的DemoIDEA
裏,你如何知道它是在spring-cloud-config
工程裏的哪個位置呢? 可以先使用alt+F1
,彈出Select in
視圖,然後選擇Project View
中的Project
,回車,就可以立刻定位到類的位置了。
那如何從project
跳回代碼裏呢?可以直接使用esc
退出project
視圖,或者直接使用F4
,跳到代碼裏。
強大的symbol
如果你依稀記得某個方法名字幾個字母,想在IDEA
裏面找出來,可以怎麽做呢? 直接使用ctrl+shift+alt+n
,使用symbol
來查找即可。 比如說:
你想找到checkUser方法。直接輸入user
即可。
如果你記得某個業務類裏面有某個方法,那也可以使用首字母找到類,然後加個.
,再輸入方法名字也是可以的。
如何找目錄
使用ctrl+shift+n
後,使用/
,然後輸入目錄名字即可.
自動生成not null判斷語句
自動生成not null這種if判斷,在IDEA
裏有很多種辦法,其中一種辦法你可能沒想到。
當我們使用rabbitTemplate. 後,直接輸入notnull
並回車,IDEA
就好自動生成if判斷了。
按照模板找內容
這個也是我非常喜歡的一個功能,可以根據模板來找到與模板匹配的代碼塊。比如說:
想在整個工程裏面找到所有的try catch語句,但是catch語句裏面沒有做異常處理的。
catch語句裏沒有處理異常,是極其危險的。我們可以IDEA
裏面方便找到所有這樣的代碼。
首先使用ctrl+shift+A
快捷鍵彈出action框,然後輸入Search Struct
選擇Search Structurally
後,回車,跳轉到模板視圖。
點擊Existing Templates
按鈕,選擇try
模板。為了能找出catch裏面沒有處理異常的代碼塊,我們需要配置一下CatchStatement
的Maximum count
的值,將其設置為1。
點擊Edit Variables
按鈕,在界面修改Maximum count
的值。
最後點擊find
按鈕,就可以找出catch裏面沒有處理異常的代碼了。 如果覺得本文有用,可以加我的群:619881427 學習更多的Java架構技術知識,包括分布式架構,微服務架構,性能優化,源碼分析等,已經有小夥伴錄制好視頻免費分享給新加入進來的朋友。
Intellij IDEA神器居然還有這些小技巧