1. 程式人生 > >IntelliJ Idea 常用快捷鍵最全的集合

IntelliJ Idea 常用快捷鍵最全的集合

 轉載:http://my.oschina.net/dyyweb/blog/494504

IntelliJ Idea 常用快捷鍵 列表(實戰終極總結!!!!)

1. -----------自動程式碼--------

常用的有fori/sout/psvm+Tab即可生成迴圈、System.out、main方法等boilerplate樣板程式碼
例如要輸入for(User user : users)只需輸入user.for+Tab

再比如,要輸入Date birthday = user.getBirthday();只需輸入user.getBirthday().var+Tab即可。程式碼標籤輸入完成後,按Tab,生成程式碼。

Ctrl+Alt+O 優化匯入的類和包
Alt+Insert 生成程式碼(如get,set方法,建構函式等)   或者右鍵(Generate)
fori/sout/psvm + Tab 
Ctrl+Alt+T  生成try catch  或者 Alt+enter
CTRL+ALT+T  把選中的程式碼放在 TRY{} IF{} ELSE{} 裡
Ctrl + O 重寫方法 
Ctrl + I 實現方法
Ctr+shift+U 大小寫轉化 
ALT+回車    匯入包,自動修正 
ALT+/       程式碼提示
CTRL+J      自動程式碼 
Ctrl+Shift+J,整合兩行為一行
CTRL+空格   程式碼提示 
CTRL+SHIFT+SPACE 自動補全程式碼 
CTRL+ALT+L  格式化程式碼 
CTRL+ALT+I  自動縮排 
CTRL+ALT+O  優化匯入的類和包 
ALT+INSERT  生成程式碼(如GET,SET方法,建構函式等) 
CTRL+E      最近更改的程式碼 
CTRL+ALT+SPACE  類名或介面名提示 
CTRL+P   方法引數提示 
CTRL+Q,可以看到當前方法的宣告
 
Shift+F6  重構-重新命名 (包、類、方法、變數、甚至註釋等)
Ctrl+Alt+V 提取變數

2. -----------查詢快捷鍵--------
Ctrl+Shift+Backspace可以跳轉到上次編輯的地
CTRL+ALT+ left/right 前後導航編輯過的地方
ALT+7  靠左視窗顯示當前檔案的結構
Ctrl+F12 浮動顯示當前檔案的結構
ALT+F7 找到你的函式或者變數或者類的所有引用到的地方
CTRL+ALT+F7  找到你的函式或者變數或者類的所有引用到的地方

Ctrl+Shift+Alt+N 查詢類中的方法或變數
雙擊SHIFT 在專案的所有目錄查詢檔案
Ctrl+N   查詢類
Ctrl+Shift+N 查詢檔案
CTRL+G   定位行 
CTRL+F   在當前視窗查詢文字 
CTRL+SHIFT+F  在指定視窗查詢文字 
CTRL+R   在 當前視窗替換文字 
CTRL+SHIFT+R  在指定視窗替換文字 
ALT+SHIFT+C  查詢修改的檔案 
CTRL+E   最近開啟的檔案 
F3   向下查詢關鍵字出現位置 
SHIFT+F3  向上一個關鍵字出現位置 
選中文字,按Alt+F3 ,高亮相同文字,F3逐個往下查詢相同文字
F4   查詢變數來源 


CTRL+SHIFT+O  彈出顯示查詢內容


Ctrl+W 選中程式碼,連續按會有其他效果
F2 或Shift+F2 高亮錯誤或警告快速定位
Ctrl+Up/Down 游標跳轉到第一行或最後一行下

Ctrl+B 快速開啟游標處的類或方法 
CTRL+ALT+B  找所有的子類 
CTRL+SHIFT+B  找變數的類 


Ctrl+Shift+上下鍵  上下移動程式碼
Ctrl+Alt+ left/right 返回至上次瀏覽的位置
Ctrl+X 刪除行
Ctrl+D 複製行
Ctrl+/ 或 Ctrl+Shift+/  註釋(// 或者/*...*/ )


Ctrl+H 顯示類結構圖
Ctrl+Q 顯示註釋文件


Alt+F1 查詢程式碼所在位置
Alt+1 快速開啟或隱藏工程面板

Alt+ left/right 切換程式碼檢視
ALT+ ↑/↓  在方法間快速移動定位 
CTRL+ALT+ left/right 前後導航編輯過的地方
Ctrl+Shift+Backspace可以跳轉到上次編輯的地
Alt+6    查詢TODO

3.---------------------其他快捷鍵-------------------
SHIFT+ENTER 另起一行
CTRL+Z   倒退(撤銷)
CTRL+SHIFT+Z  向前(取消撤銷)
CTRL+ALT+F12  資源管理器開啟資料夾 
ALT+F1   查詢檔案所在目錄位置 
SHIFT+ALT+INSERT 豎編輯模式 
CTRL+F4  關閉當前視窗
Ctrl+Alt+V,可以引入變數。例如:new String(); 自動匯入變數定義
Ctrl+~,快速切換方案(介面外觀、程式碼風格、快捷鍵對映等選單)

4.--------------svn快捷鍵---------------

ctrl+k 提交程式碼到SVN
ctrl+t 更新程式碼

5.--------------除錯快捷鍵---------------

其實常用的 就是F8 F7 F9 最值得一提的 就是Drop Frame  可以讓執行過的程式碼從頭再來

alt+F8          debug時選中檢視值
Alt+Shift+F9,選擇 Debug
Alt+Shift+F10,選擇 Run
Ctrl+Shift+F9,編譯
Ctrl+Shift+F8,檢視斷點

F7,步入
Shift+F7,智慧步入
Alt+Shift+F7,強制步入
F8,步過
Shift+F8,步出
Alt+Shift+F8,強制步過

Alt+F9,執行至游標處
Ctrl+Alt+F9,強制執行至游標處
F9,恢復程式
Alt+F10,定位到斷點

6.--------------重構---------------
Ctrl+Alt+Shift+T,彈出重構選單
Shift+F6,重新命名
F6,移動
F5,複製
Alt+Delete,安全刪除
Ctrl+Alt+N,內聯
============================================================


 十大Intellij IDEA快捷鍵




Intellij IDEA中有很多快捷鍵讓人愛不釋手,stackoverflow上也有一些有趣的討論。每個人都有自己的最愛,想排出個理想的榜單還真是困難。
以前也整理過Intellij的快捷鍵,這次就按照我日常開發時的使用頻率,簡單分類列一下我最喜歡的十大快捷-神-鍵吧。


1 智慧提示:

Intellij首當其衝的當然就是Intelligence智慧!基本的程式碼提示用Ctrl+Space,還有更智慧地按型別資訊提示Ctrl+Shift+Space,但因為Intellij總是隨著我們敲擊而自動提示,所以很多時候都不會手動敲這兩個快捷鍵(除非提示框消失了)。用F2/ Shift+F2移動到有錯誤的程式碼,Alt+Enter快速修復(即Eclipse中的Quick Fix功能)。當智慧提示為我們自動補全方法名時,我們通常要自己補上行尾的反括號和分號,當括號巢狀很多層時會很麻煩,這時我們只需敲Ctrl+Shift+Enter就能自動補全末尾的字元。而且不只是括號,例如敲完if/for時也可以自動補上{}花括號。
最後要說一點,Intellij能夠智慧感知Spring、Hibernate等主流框架的配置檔案和類,以靜制動,在看似“靜態”的外表下,智慧地掃描理解你的專案是如何構造和配置的。


2 重構:
Intellij重構是另一完爆Eclipse的功能,其智慧程度令人瞠目結舌,比如提取變數時自動檢查到所有匹配同時提取成一個變數等。尤其看過《重構-改善既有程式碼設計》之後,有了Intellij的配合簡直是令人大呼過癮!也正是強大的智慧和重構功能,使Intellij下的TDD開發非常順暢。


切入正題,先說一個無敵的重構功能大彙總快捷鍵Ctrl+Shift+Alt+T,叫做Refactor This。按法有點複雜,但也符合Intellij的風格,很多快捷鍵都要雙手完成,而不像Eclipse不少最有用的快捷鍵可以瀟灑地單手完成(不知道算不算Eclipse的一大優點),但各位用過Emacs的話就會覺得也沒什麼了(非Emacs黑)。此外,還有些最常用的重構技巧,因為太常用了,若每次都在Refactor This選單裡選的話效率有些低。比如Shift+F6直接就是改名,Ctrl+Alt+V則是提取變數。

3 程式碼生成:
這一點類似Eclipse,雖不是獨到之處,但因為日常使用頻率極高,所以還是羅列在榜單前面。常用的有fori/sout/psvm+Tab即可生成迴圈、System.out、main方法等boilerplate樣板程式碼,用Ctrl+J可以檢視所有模板。後面“輔助”一節中將會講到Alt+Insert,在編輯視窗中點選可以生成建構函式、toString、getter/setter、重寫父類方法等。這兩個技巧實在太常用了,幾乎每天都要生成一堆main、System.out和getter/setter。

另外,Intellij IDEA 13中加入了字尾自動補全功能(Postfix Completion),比模板生成更加靈活和強大。例如要輸入for(User user : users)只需輸入user.for+Tab。再比如,要輸入Date birthday = user.getBirthday();只需輸入user.getBirthday().var+Tab即可。

4 編輯:
編輯中不得不說的一大神鍵就是能夠自動按語法選中程式碼的Ctrl+W以及反向的Ctrl+Shift+W了。此外,Ctrl+Left/Right移動游標到前/後單詞,Ctrl+[/]移動到前/後代碼塊,這些類Vim風格的游標移動也是一大亮點。以上Ctrl+Left/Right/[]加上Shift的話就能選中跳躍範圍內的程式碼。Alt+Forward/Backward移動到前/後方法。還有些非常普通的像Ctrl+Y刪除行、Ctrl+D複製行、Ctrl+</>摺疊程式碼就不多說了。

關於游標移動再多擴充套件一點,除了Intellij本身已提供的功能外,我們還可以安裝ideaVim或者emacsIDEAs享受到Vim的快速移動和Emacs的AceJump功能(超爽!)。另外,Intellij的書籤功能也是不錯的,用Ctrl+Shift+Num定義1-10書籤(再次按這組快捷鍵則是刪除書籤),然後通過Ctrl+Num跳轉。這避免了多次使用前/下一編輯位置Ctrl+Left/Right來回跳轉的麻煩,而且此快捷鍵預設與Windows熱鍵衝突(預設多了Alt,與Windows改變顯示器顯示方向衝突,一不小心顯示器就變成倒著顯式的了,冏啊)。


5 查詢開啟:


類似Eclipse,Intellij的Ctrl+N/Ctrl+Shift+N可以開啟類或資源,但Intellij更加智慧一些,我們輸入的任何字元都將看作模糊匹配,省卻了Eclipse中還有輸入*的麻煩。最新版本的IDEA還加入了Search Everywhere功能,只需按Shift+Shift即可在一個彈出框中搜索任何東西,包括類、資源、配置項、方法等等。


類的繼承關係則可用Ctrl+H開啟類層次視窗,在繼承層次上跳轉則用Ctrl+B/Ctrl+Alt+B分別對應父類或父方法定義和子類或子方法實現,檢視當前類的所有方法用Ctrl+F12。


要找類或方法的使用也很簡單,Alt+F7。要查詢文字的出現位置就用Ctrl+F/Ctrl+Shift+F在當前視窗或全工程中查詢,再配合F3/Shift+F3前後移動到下一匹配處。


Intellij更加智慧的又一佐證是在任意選單或顯示視窗,都可以直接輸入你要找的單詞,Intellij就會自動為你過濾。


6 其他輔助:


以上這些神鍵配上一些輔助快捷鍵,即可讓你的雙手90%以上的時間擺脫滑鼠,專注於鍵盤彷彿在進行鋼琴表演。這些不起眼卻是至關重要的最後一塊拼圖有:


Ø  命令:Ctrl+Shift+A可以查詢所有Intellij的命令,並且每個命令後面還有其快捷鍵。所以它不僅是一大神鍵,也是查詢學習快捷鍵的工具。


Ø  新建:Alt+Insert可以新建類、方法等任何東西。


Ø  格式化程式碼:格式化import列表Ctrl+Alt+O,格式化程式碼Ctrl+Alt+L。


Ø  切換視窗:Alt+Num,常用的有1-專案結構,3-搜尋結果,4/5-執行除錯。Ctrl+Tab切換標籤頁,Ctrl+E/Ctrl+Shift+E開啟最近開啟過的或編輯過的檔案。


Ø  單元測試:Ctrl+Alt+T建立單元測試用例。


Ø  執行:Alt+Shift+F10執行程式,Shift+F9啟動除錯,Ctrl+F2停止。


Ø  除錯:F7/F8/F9分別對應Step into,Step over,Continue。


此外還有些我自定義的,例如水平分屏Ctrl+|等,和一些神奇的小功能Ctrl+Shift+V貼上很早以前拷貝過的,Alt+Shift+Insert進入到列模式進行按列選中。


Ø  Top #10切來切去:Ctrl+Tab


Ø  Top #9選你所想:Ctrl+W


Ø  Top #8程式碼生成:Template/Postfix +Tab


Ø  Top #7發號施令:Ctrl+Shift+A


Ø  Top #6無處藏身:Shift+Shift


Ø  Top #5自動完成:Ctrl+Shift+Enter


Ø  Top #4創造萬物:Alt+Insert


太難割捨,前三名並列吧!


Ø  Top #1智慧補全:Ctrl+Shift+Space


Ø  Top #1自我修復:Alt+Enter


Ø  Top #1重構一切:Ctrl+Shift+Alt+T


CTRL+ALT+ left/right 前後導航編輯過的地方
Ctrl+Shift+Backspace可以跳轉到上次編輯的地