IntelliJ IDEA不好用?那是因为没掌握这些技巧
以下文章來源于Java之道?,作者小胖兒
想要愉快的coding,一個好的IDE肯定少不了。而對于Java開發(fā)者來說,IntelliJ IDEA絕對是Java-IDE的首屈一指的選擇(eclipse黨還請繞我一命)。
從我第一次下載IDEA到現(xiàn)在已經(jīng)有一年半了,時間越久我發(fā)現(xiàn)我對這個超級智能的IDE愛的越深,尤其是其內(nèi)置的很多小功能大大的提高了我的日常coding的效率。
下面呢,我就來逐一說說這款優(yōu)秀的IDE的使用技巧吧(我羅列的估計也就是冰山一角)!
tip:由于我漢化了,所以截圖的界面會包含很多中文,但是我會在文字說明處說明其英文
一、提高效率的必備配置
1、代碼自動補全提示
設(shè)置路徑:Settings -> Editor -> General -> Code Completion
如圖所示:
2、ctrl+滑輪調(diào)整字體大小
設(shè)置路徑Settings -> Editor -> General
如圖所示:
3、自動導(dǎo)包
設(shè)置路徑Settings -> Editor -> General -> Auto Import
如圖所示:
4、顯示行號
設(shè)置路徑Settings -> Editor -> General -> Appearance
如圖所示:
二、快樂編碼的常用技巧
1、解決錯誤的萬能快捷鍵alt+Enter
比如有多個可選擇的導(dǎo)入的類的時候、比如繼承了虛基類或?qū)崿F(xiàn)了接口但是沒有重寫方法的時候、或者想使用的類沒有在maven中添加依賴的時候……
諸如此類,你都可以先嘗試將光標移動到代碼標紅處然后按下alt+Enter然后看看IDE自動給你推薦的修改代碼的提示。
如圖(包括但不限于這種情況):
2、媽媽再也不用擔(dān)心我的代碼對齊問題了
剛開始學(xué)C語言的時候,很多同學(xué)寫代碼的時候都不進行對齊,然后我們看到的效果如下:
沒有IDE的時候,我們的做法是花上幾分鐘時間一點一點給它解決代碼對齊問題。
都9012年了,我們的IDE已經(jīng)很智能了,一鍵就可以解決代碼對齊問題:
? ? ? ?第一種方式:選擇導(dǎo)航欄的Code -> Reformat Code即可
-
第二種方式:快捷鍵ctrl+alt+L
3、手殘黨的救命功能:全部重命名
有時候,包名、類名、方法名、變量名……這些我們可能要用到很多次的名字,在不經(jīng)意間寫錯了,而且還到處引用了很多次(感謝IDE的代碼提示功能,不然第二次使用變量名的時候就知道是錯的了)。那么這種情況怎么解決呢?
教你一招:IDEA重命名全部的相同引用。下面是使用方法:
將光標移動到那個錯誤的單詞
右鍵,選擇Refactor -> Rename,然后你選擇的那個單詞會出現(xiàn)一個紅框
在紅框內(nèi)輸入重命名后的單詞,輸入完畢后按回車
可能會在IDE的某個窗口中有提示,這個看自己情況而行吧,我一般都是直接點確認
全部重命名成功
如下圖:
這里有的同學(xué)可能有疑問,如果某些特殊情況,我在同一個文件里面,第一個方法的參數(shù)為List results第二個方法的參數(shù)為Map results,那執(zhí)行完上面的重命名過后會不會兩個都修改啊?當(dāng)然不會。IDEA的智能在于它會檢索相同引用的地方,一般就是用戶想修改的地方,包括注釋的地方
4、快速注釋代碼
很簡單實用的一個功能,當(dāng)某行或某塊代碼需要被注釋的時候,選中這塊代碼,鍵入下面的快捷鍵即可:
-
ctrl + /會在代碼前自動添加//,這個方式會注釋掉所有被選中的行
-
ctrl + shift +/會在光標處或選擇的代碼塊前后添加/*和*/,這個方式不能保證正確的注釋,只能保證在選擇的代碼前后添加注釋標志,即使未選擇代碼塊,也會在光標所在處天劍/**/
取消注釋的快捷鍵同上,只要在被注釋的代碼處鍵入上面的快捷鍵即可
5、小白最想用的快捷鍵ctrl + 鼠標單擊
5.1 查看源碼
不知道變量聲明在哪里,不知道方法的源碼是什么,不知道類的具體代碼是什么……如果你正在飽受上述的煎熬,那么你可以嘗試在你不知道的那個東西的地方使用快捷鍵ctrl + 鼠標單擊,比如:
-
你不知道某個變量實在哪里聲明的,那就按住ctrl然后單擊這個變量名,IDE自動將光標跳轉(zhuǎn)到其聲明處
-
你想查看這個類的源碼,那就按住ctrl然后單擊這個類名,IDE自動跳轉(zhuǎn)到這個類
5.2 快速查看使用
這個就是上面的逆過程。
當(dāng)你不知道這個類在哪里使用過,不知道某個定義的方法在哪里被調(diào)用過、某個聲明的變量在哪里被使用過……還是嘗試使用ctrl + 鼠標單擊。
注意查看源碼和查看使用的區(qū)別:查看源碼是用在類名、方法、變量……的使用處,而查看使用是用在.java文件的類名、定義的方法名、變量聲明……一類的定義處。
6、快速生成代碼
編寫POJO類的時候是不是被它的get和set方法逼瘋了?編寫構(gòu)造方法的時候?qū)憛?shù)類型和參數(shù)名是不是很煩?繼承了父類但是想重寫方法實現(xiàn)的時候是不是還要找到父類看看它的方法名?……
別傻了,IDEA早就考慮到你會有這種需求了,這里帶給你一個相當(dāng)厲害的快捷鍵alt + insert,這個insert就在鍵盤的多功能按鍵處,自己找找吧。
使用示例:
新建一個POJO類,寫上基本的字段,然后再類文件的兩個花括號之間的隨便一處空白鍵入alt+insert,出現(xiàn)這個窗口。(因為我的IDEA已經(jīng)漢化了,所以他有的功能已經(jīng)一目了然了)
? ? ?選擇構(gòu)造get和set,英文版的是getter and setter,出現(xiàn)下面的界面。IDEA生成的set方式有兩種,一種是返回void的, ? ? ? 另一種是返回當(dāng)前對象的。具體區(qū)別呢,就是我們在set的過程可不可以使用鏈式結(jié)構(gòu)。
? ? ?3.選擇確定,然后查看生成的代碼:
7、最拉風(fēng)的代碼生成器
上面快速生成代碼的方式還不夠,下面來教給大家一個更加拉風(fēng)的代碼生成器。
for循環(huán)、判斷空元素、輸出到控制臺、通過方法返回值生成變量……很多我們?nèi)粘懘a的時候遇到的問題都在IDEA里面逐一解決了。怎么解決的?請看下面:
-
快速生成for循環(huán):
-
在空的代碼行輸入fori或foreach,然后根據(jù)提示按回車,則會自動生成for代碼塊
-
對數(shù)組或集合類進行遍歷,輸入變量名,然后可以①輸入.for生成增強型for循環(huán)代碼塊②輸入.fori生成普通for循環(huán)代碼塊③輸入forr生成普通for循環(huán)逆序的代碼塊
-
-
快速判斷空/非空:輸入需要判斷的變量名,然后可以①輸入.null生成判斷空的代碼塊②輸入.nn或.notnull生成判斷非空的代碼塊
-
快速生成輸出語句:輸入需要輸出到控制臺的變量名,然后輸入.sout生成輸出該變量的代碼
-
快速生成變量:首先輸入要調(diào)用的方法,然后輸入.var自動生成包含變量類型的變量
-
快速生成主方法:在要生成主方法的地方輸入psvm即可生成主方法,這四個字母代表了public static void main(String[] args)中的四個單詞首字母
-
快速上鎖:輸入要加鎖的變量名,然后輸入.synchronized即可直接對變量加鎖,不要擔(dān)心單詞太長記不住,IDE還有代碼提示功能呢
-
快速生成try-catch代碼塊:在要生成try-catch代碼塊的語句或變量后面輸入.try即可
-
快速格式化字符串:在要格式化的字符串或字符串變量后面輸入.format即可
三、忘掉那奇奇怪怪的指令
當(dāng)然呢,只是一個標題黨,所有的指令還是能記下來就記下來吧,萬一哪天boss不讓你用IDEA了呢。
然后這一節(jié)主要說一下IDEA對于maven和Git的集成工具的使用。
1、maven篇
maven自己的指令其實并不多,但是當(dāng)我們添加了maven的插件以后,那maven的指令數(shù)量就變量不確定了。尤其是,maven的插件并不少,我們不可能把所有的插件的指令都背下來,也不可能每次都去谷歌一下吧。
IDEA為我們提供了很好的解決方式,下面我們來嘗試一下:
首先,這一定要是一個maven工程
選擇導(dǎo)航欄處View -> Tool Windows -> Maven即可彈出一個窗口,如下所示,這個窗口用戶可以自定義其位置。我們可以看到,這個串口里面不但包含了基礎(chǔ)的maven指令(Lifecycle里),還包含了maven插件的指令。
雙擊需要執(zhí)行的指定即可。
2、Git篇
Git指令不多,但是Git指令使用起來的時候總有一種別扭的感覺。而且,Git如果用在命令行處的話,篩選文件什么的也是相當(dāng)麻煩的,IDEA集成的Git工具可以幫助用戶在可視化界面進行Git的相關(guān)操作。
2.1 git status
git status指令可以顯示當(dāng)前git項目的文件夾狀態(tài)包括增刪改的文件狀態(tài)。該指令在IDEA里面直接映射為文件顏色,大概如下(可能每個人的都不一樣):
-
紅色:該文件是新建的文件,且沒有被git add
-
綠色:該文件是新建的文件,且被git add
-
藍色:該文件是被修改過的文件
-
白色:改文件沒有被修改過
如圖所示:
2.2 git add
git add指令在IDEA中可以通過在需要git add的文件或文件夾處右鍵,選擇VCS -> Add
不過這個操作我一般不在IDEA中使用,因為還有更好的解決辦法。
2.3 git commit
git commit指令在IDEA中可以通過選擇VCS -> Commit File...來執(zhí)行,下面是選擇完Commit Files...后的彈出窗口:
2.4 git push
git push指令可以通過選擇VCS -> push進行操作。如下:
2.5 git pull
剛剛選擇push的時候應(yīng)該看到了pull按鈕了,即VCS -> pull.如下:
2.6 切換分支
? ? ? ?選擇VCS -> Branches可以查看并選擇分支
-
可以通過點擊窗口右下角的Git標簽執(zhí)行相同的操作
2.7 比較文件修改
在需要比較的文件處點擊工具欄處該按鈕
即可打開一個窗口進行文件修改比較。
從紅可以看到,標了>>的是我們新添加的代碼,可以通過點擊那個>>符號來直接刪除添加的代碼
2.8 查看當(dāng)前文件的修改記錄
可以通過點擊該按鈕
?
打開一個窗口查看當(dāng)前文件的修改記錄。
?
四、最后再來點小動作(插件和其他)
1、書簽
最近我閱讀源碼的時候經(jīng)常遇到一個問題,就是執(zhí)行到某一處代碼,看了他的源碼,然后跳了一下界面,再然后就不知道之前看到哪里了。spring的源碼幾乎每個類文件都有幾百幾千行代碼,然后還有成千上萬的類文件,想在找回去猶如大海撈針。
后臺我發(fā)現(xiàn),IDEA內(nèi)置了一個書簽功能,大概意思就是給代碼行打個標簽,然后在我們想回去的時候通過簡單操作就可以返回到打標簽的代碼行了。
具體操作如下:
? ? ? ? 在需要打標簽的代碼行處按F11即可打上標簽,打標簽的代碼行前面會有一個對勾標記
想跳回到打標簽的代碼時,按shift + F11即可打開書簽窗口,選擇要返回的標簽即可
同時,我們也可以在書簽窗口對我們打的書簽進行備注,方便記憶
當(dāng)然呢,書簽還有一個更加牛逼更加方便的功能,就是打個臨時標簽,然后通過快捷鍵返回到標簽標記處:
在需要打標簽的代碼行處按ctrl+shift+數(shù)字1234,然后這時候標記會變?yōu)?234(和按得按鍵相同)
需要返回的時候直接按ctrl+數(shù)字1234即可跳回
2、最騷氣的快捷鍵ctrl + w
這個最騷氣的快捷鍵我已經(jīng)不知道怎么描述他的作用了,自行嘗試吧
3、條件斷點
在我們使用斷點調(diào)試的時候,我們最害怕的就是遇到數(shù)組,尤其是數(shù)量極大的數(shù)組然后其中只有某一個或某一部分出問題了,然后我們調(diào)試的時候就不得不添加一個if語句來方便調(diào)試。不過我們的IDEA不愧為超級智能的IDE,我們可以通過IDEA直接添加條件斷點來實現(xiàn)調(diào)試到特定的斷點處。
使用辦法:
打斷點
在斷點處右鍵
鍵入條件,該條件應(yīng)該返回一個布爾值,斷點會停到該條件為true的時候
4、插件
作為一個優(yōu)秀的IDE,可能他的功能還不足以滿足你的需求,那么功能不夠,插件來湊,下面是我個人推薦的幾款I(lǐng)DEA插件。
-
Translation:一款相當(dāng)強大的翻譯插件,支持劃詞翻譯、中英互換等
-
RestfulToolkit:提供快速定位接口方法、簡單的HTTP請求工具及一些其他的強大功能的工具
-
Mybatis Log Plugin:輸出可執(zhí)行的sql語句
-
Alibaba Java Coding Guidelines:阿里代碼規(guī)約檢測
本文轉(zhuǎn)載自微信公眾號 漫話編程
總結(jié)
以上是生活随笔為你收集整理的IntelliJ IDEA不好用?那是因为没掌握这些技巧的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java NIO 介绍和基本demo
- 下一篇: 手写带注册中心的rpc框架(Netty版