簡介
- 工欲善其事必先利其器,修行的路上少不了一把好劍…在使用Java代碼開發的過程中如何在紛繁複雜的類海里不迷失方向,一個好的IDE很重要。如今eclipse基本被IntelliJ取代,此時不用更待何時!
- 這裏記錄IDEA從安裝到使用的各方面技巧
- 我使用的是Windows平臺,涉及到的快捷鍵在不同平臺會有差異,但這裏都會給出確定方法
安裝
- 推薦官網下載
- 自覺使用Ultimate版本,雖然這個是付費的但是智慧的中國人民自然有辦法解決!
- 安裝步驟這裏省略一下,老生常談:不要安裝在C盤,路徑不要有中文
- 簡單看一下界面,風格是可以設置的
高效定位
項目跳轉
- 多個工程可以互相跳轉
- 快捷鍵
ctrl+alt+[
或者ctrl+alt+]
授之以漁
- 我們可以在菜單欄
Help
中第一項找到Find Action...
它的功能是根據關鍵字搜索相關的操作,這是一個強大的檢索工具,無論是查詢IDEA操作還是安裝插件等等都會用到!後面說的help搜索指的就是這個操作 - 例如我們要在頻繁編輯的幾個文件之間跳轉,使用
ctrl+shift+A
調出窗口,搜索recent files
即可發現ctrl+E
快捷鍵可以調出最近編輯文件的窗口
- 在菜單欄
Navigate
找那個可以發現跳到上一次編輯位置快捷鍵ctrl + shift + Backspace
標籤跳轉
- 標籤跳轉在閱讀源碼的時候非常有用了
- 打標籤:help中搜索
Toggle Bookmarks
可以發現快捷鍵F11
和ctrl + F11
,如圖,分別打出如下標籤:很容易看出區別吧
- 也可以使用
ctrl + shift + 序號
實現ctrl+F11
的功能 - 使用標籤:
ctrl + 標籤序號
收藏
- 使用
Alt + 2
可以調出Favorites,下面有一個以工程命名的自動創建的收藏夾;收藏夾可以放入類或函數(Alt+序號可以在各個邊欄中跳轉,邊欄就是上面界面介紹中我框出的地方) - 將光標放在想收藏的類或函數上,使用
Alt + shift + F
可以選擇添加到那個收藏夾或者新建
插件跳轉
- 在help中搜索
plugins
跳轉到插件安裝,搜索emacsIDEAs
然後Install,重啓IDEA生效 - 配置:在help中搜索Manage Keymap,在
Plug-ins
中找到emacsIDEAs,找到AceJumpWord
右鍵即可添加快捷鍵,我設置爲shift + J
- 在代碼編輯區使用快捷鍵後,比如我們想跳轉到有F字母的位置,只需要按下F:
他會將所有的F高亮爲不同字母,按下相應字母即可跳轉:這個高亮的顏色可以設置
- 想手不離鍵盤寫代碼嗎?快用起來!
分屏
- 可以使用菜單欄中Window下的Editor Tabs下的
Split Vertically/Horizontally
實現
精準搜索
類
- 對應菜單欄Navigate下的Class快捷鍵
Ctrl + N
,輸入我們想要查找的類名即可 - 按兩次快捷鍵可以顯示相關的所有類的位置,包括jar包中
文件
- 同理,使用快捷鍵
ctrl + shift + N
函數
- 同理,使用快捷鍵
ctrl + alt + shift + N
字符串
- 在菜單欄Edit下的Find中,Find in Path選項,快捷鍵
ctrl + shift + F
- 提供了很多的搜索條件,可以限制搜索的範圍等
列操作
常用快捷鍵
- 大小寫轉換:在菜單欄Edit下的Toggle Case,
ctrl + shift + U
- 移動到單詞結尾:help搜索move caret to next word會發現快捷鍵
ctrl + →
,移動到單詞開頭同理 - 移動到行尾:
End
,在鍵盤上找,我的是數字7,即shift + 1
,行首:shift + 7
ctrl + shift + →
可以選擇,這個應該都雞道_(:з」∠)_!
以一當十
- 可以在每行進行相同操作時使用列操作
- 例如我們需要將下面的文件內容轉爲枚舉類:
100:"Continue"
102:"Processing"
103:"Checkpoint"
200:"Ok"
201:"Created"
202:"Accepted"
302:"Found"
- 新建Enum類,將上面的內容複製過去,選中我們當前行要操作的內容,例如選中冒號,使用
ctrl + alt + shift + J
,可以發現每行的冒號都被選中!
// 使用上面提到的常用快捷鍵即可快速操作
public enum enumT {
CONTINUE(100),
PROCESSING(102),
CHECKPOINT(103),
OK(200),
CREATED(201),
ACCEPTED(202),
FOUND(302);
enumT(int i) {
}
}
F2
可以快速定位到錯誤
模板
Template
- help搜索
Live Templates
,會發現這個設置是在settings下面
- 如圖所示,定義
syso
快捷輸出System.out.println()
$END$
表示模板輸出後光標停留的位置
$var1$ $var2$
表示我們可以輸入完變量var1回車跳轉到var2的位置- 定義屬性模板:
同理,第一個位置寫註釋,敲回車定義變量名:
新建的模板分組需要選定語言環境爲Java,會有提示
postfix
- postfix的意思相當於我們在使用實例時的
.
,可以自動顯示出此類定義的成員函數及屬性名稱 - 類似於template,但不可編輯,只有預設的幾種方案
- 如圖,定義
fori
可自動將變量for循環
- 使用
sout
可以快速輸出變量,例如new Date().sout
,效果如下:System.out.println(new Date());
- 使用
field
,可以自動創建構造方法中的屬性,例如使用name.field
private final String name; public test(String name) { this.name = name; }
- 使用
return
可以快速返回變量,例如t.return
test t = new test("Roy"); return t;
- 使用
nn
可以創建if條件,例如t.nn
,得到:if (t != null) { }
- 還有一些postfix可以自己嘗試
Alt+Enter
- 這個快捷鍵用來提示我們進行相關操作,涉及方方面面:
- 自動創建函數:當我們用了個函數但還沒有創建的時候就…
- List replace:我們遍歷list可以使用for循環,但更簡潔的是forEach,可以自動替換
- String Format:
Replace + with string format
String name = "Roy";
int age = 18;
// "name:" + name + ",age:" + age
String x = String.format("name:%s, age:%d", name, age);
System.out.printf("name:%s, age:%d%n", name, age);
- 實現定義的接口
public class UserImple implements User {
@Override
public void say() {
}
}
- 單詞建議:當我們寫了個單詞有拼寫錯誤的時候,下面還出現下劃線,alt+enter會給出參考
- 導包:這應該是最常用的操作了吧!
小結
這裏介紹了使用IDEA開發應掌握的基本快捷鍵,熟練使用可以讓我們的效率很大提升。學以致用,祝大家擼碼的時候做秒男!
下節記錄IntelliJ技巧——代碼優化