
因?yàn)橛X得網(wǎng)絡(luò)上的 idea 快捷鍵不夠詳盡,所以特別編寫了此篇文章,方便大家使用 idea O(∩_∩)O~
其中的英文說明來自于 idea 的官網(wǎng)資料,中文說明主要來自于自己的領(lǐng)會和理解,英文說明只是作為參考。重要的快捷鍵會附帶圖示,進(jìn)行詳細(xì)的說明。
每一部分會先列出所有的快捷鍵說明表,如果有不清楚的地方,再看后續(xù)的圖示詳解。
1 編輯【Editing】
快捷鍵 |
英文說明 |
中文說明 |
Ctrl + Space |
Basic code completion (the name of any class, method or variable) |
補(bǔ)全代碼,由于經(jīng)常與操作系統(tǒng)的輸入法的切換沖突,所以實(shí)際很少用。一般直接在 idea 中開啟輸入自動補(bǔ)全機(jī)制。 |
Ctrl + Shift + Space |
Smart code completion (filters the list of methods and variables by expected type |
在列出的可選項(xiàng)中只顯示出你所輸入的關(guān)鍵字最相關(guān)的信息。(常用) |
Ctrl + Shift + Enter |
Complete statement |
代碼補(bǔ)全后,自動在代碼末尾添加分號結(jié)束符 |
Ctrl + P |
Parameter info (within method call arguments) |
在某個(gè)方法中,調(diào)用該按鍵后,會展示出這個(gè)方法的調(diào)用參數(shù)列表信息。 |
Ctrl + Q |
Quick documentation lookup |
展示某個(gè)類或者方法的 API 說明文檔 |
Ctrl + mouse |
over code Brief Info |
跳進(jìn)到某個(gè)類或者方法源代碼中進(jìn)行查看。(常用) |
Alt + Insert |
Generate code… (Getters, Setters, Constructors, hashCode/equals, toString) |
自動生成某個(gè)類的 Getters, Setters, Constructors, hashCode/equals, toString 等代碼。(常用) |
Ctrl + O |
Override methods |
展示該類中所有覆蓋或者實(shí)現(xiàn)的方法列表,注意這里是字母小寫的 O! |
Ctrl + Alt + T |
Surround with… (if..else,try..catch, for, synchronized, etc.) |
自動生成具有環(huán)繞性質(zhì)的代碼,比如:if..else,try..catch, for, synchronized 等等,使用前要先選擇好需要環(huán)繞的代碼塊。(常用) |
Ctrl + / |
Comment/uncomment with line comment |
對單行代碼,添加或刪除注釋。分為兩種情況:如果只是光標(biāo)停留在某行,那么連續(xù)使用該快捷鍵,會不斷注釋掉下一行的代碼;如果選定了某行代碼(選定了某行代碼一部分也算這種情況),那么連續(xù)使用該快捷鍵,會在添加或刪除該行注釋之間來回切換。(常用) |
Ctrl + Shift + / |
Comment/uncomment with block comment |
對代碼塊,添加或刪除注釋。它與 Ctrl + / 的區(qū)別是,它只會在代碼塊的開頭與結(jié)尾添加注釋符號!(常用) |
Ctrl + W |
Select successively increasing code blocks |
選中當(dāng)前光標(biāo)所在的代碼塊,多次觸發(fā),代碼塊會逐級變大。(常用) |
Ctrl + Shift + W |
Decrease current selection to previous state |
是 Ctrl + W 的反向操作,多次觸發(fā),代碼塊會逐級變小,最小變?yōu)楣鈽?biāo)。 |
Alt + Q |
Context info |
展示包含當(dāng)前光標(biāo)所在代碼的父節(jié)點(diǎn)信息,比如在 java 方法中調(diào)用,就會展示方法簽名信息。 |
Alt + Enter |
Show intention actions and quick-fixes |
展示當(dāng)前當(dāng)前光標(biāo)所在代碼,可以變化的擴(kuò)展操作 |
Ctrl + Alt + L |
Reformat code |
格式化代碼 (常用) |
Ctrl + Alt + O |
Optimize imports |
去除沒有實(shí)際用到的包,這在 java 類中特別有用。(常用) |
Ctrl + Alt + I |
Auto-indent line(s) |
按照縮進(jìn)的設(shè)定,自動縮進(jìn)所選擇的代碼段。 |
Tab / Shift + Tab |
Indent/unindent selected lines |
縮進(jìn)或者不縮進(jìn)一次所選擇的代碼段。(常用) |
Ctrl + X 或 Shift Delete |
Cut current line or selected block to clipboard |
剪切當(dāng)前代碼。 (常用) |
Ctrl + C 或 Ctrl + Insert |
Copy current line or selected block to clipboard |
拷貝當(dāng)前代碼。 (常用) |
Ctrl + V 或 Shift + Insert |
Paste from clipboard |
粘貼之前剪切或拷貝的代碼。(常用) |
Ctrl + Shift + V |
Paste from recent buffers… |
從之前的剪切或拷貝的代碼歷史記錄中,選擇現(xiàn)在需要粘貼的內(nèi)容。(常用) |
Ctrl + D |
Duplicate current line or selected block |
復(fù)制當(dāng)前選中的代碼。(常用) |
Ctrl + Y |
Delete line at caret |
刪除當(dāng)前光標(biāo)所在的代碼行。(常用) |
Ctrl + Shift + J |
Smart line join |
把下一行的代碼接續(xù)到當(dāng)前的代碼行。 |
Ctrl + Enter |
Smart line split |
當(dāng)前代碼行與下一行代碼之間插入一個(gè)空行,原來所在的光標(biāo)不變。(常用) |
Shift + Enter |
Start new line |
當(dāng)前代碼行與下一行代碼之間插入一個(gè)空行,原來光標(biāo)現(xiàn)在處于新加的空行上。(常用) |
Ctrl + Shift + U |
Toggle case for word at caret or selected block |
所選擇的內(nèi)容進(jìn)行大小寫轉(zhuǎn)換。。(常用) |
Ctrl + Shift + ]/[ |
Select till code block end/start |
從當(dāng)前光標(biāo)所在位置開始,一直選擇到當(dāng)前光標(biāo)所在代碼段起始或者結(jié)束位置。 |
Ctrl + Delete |
Delete to word end |
刪除從當(dāng)前光標(biāo)所在位置開始,直到這個(gè)單詞的結(jié)尾的內(nèi)容。 |
Ctrl + NumPad(+/-) |
Expand/collapse code block |
展開或收縮代碼段。 (常用) |
Ctrl + Shift + NumPad(+) |
Expand all |
展開所有代碼段。 |
Ctrl + Shift + NumPad(-) |
Collapse all |
收縮所有代碼段。 |
Ctrl + F4 |
Close active editor tab |
關(guān)閉當(dāng)前標(biāo)簽頁。 |
Shift + F6 |
|
修改名字。(常用) |
1.1 Ctrl + Shift + Space 示例(智能補(bǔ)全)
使用前,用于補(bǔ)全的列表,默認(rèn)是以輸入的關(guān)鍵字作為前綴的:

使用后,用于補(bǔ)全的列表,會把與輸入的關(guān)鍵字最相關(guān)的信息排到最前面,比如這里的 Resource 的實(shí)現(xiàn)類會直接過濾出來,很方便吧 O(∩_∩)O~:

1.2 Ctrl + P 示例(方法參數(shù)列表)

1.3 Ctrl + Q 示例(API 說明文檔)

不大好用,字體太小了,還不如直接 [ctrl + 點(diǎn)擊] 看源代碼來的方便!
1.4 Alt + Insert 示例(自動生成與類相關(guān)的代碼)
如果綁定了 Spring 框架,還能自動生成與 Spring 相關(guān)的依賴參數(shù)哦:

1.5 Ctrl + O 示例(該類中所有覆蓋或者實(shí)現(xiàn)的方法列表)

1.6 Ctrl + Alt + T 示例(生成具有環(huán)繞性質(zhì)的代碼)
再強(qiáng)調(diào)一遍,使用前要先選擇好需要環(huán)繞的代碼塊!沒有選擇代碼塊,還做環(huán)繞干嘛呢 O(∩_∩)O~

在右邊的 Surround with 列表,就是目前支持的自動代碼環(huán)繞功能,可以直接通過列表最左邊的快捷鍵選擇,是不是很方便呀 O(∩_∩)O~
它還支持自定義的代碼模板(Live templates)呢,很強(qiáng)大吧。
1.7 Ctrl + Shift + V 示例(剪切或拷貝的代碼歷史記錄中,選擇粘貼的內(nèi)容)
這是一個(gè)很酷的功能 O(∩_∩)O~,它會把之前剪切或拷貝的代碼歷史記錄(最近 5 條)展示出來,讓你來選擇哦??上У氖?,列表選項(xiàng)如果是中文會亂碼,還好內(nèi)容可以正常顯示:

2 查找或替換【Search/Replace】
快捷鍵 |
英文說明 |
中文說明 |
Ctrl + F |
Find |
在當(dāng)前標(biāo)簽頁中進(jìn)行查找,還支持正則表達(dá)式哦。(常用) |
F3 |
Find next |
如果找到了多個(gè)查找結(jié)果,每調(diào)用一次就會跳到下一個(gè)結(jié)果,很方便哦。 |
Shift + F3 |
Find previous |
是 F3 的反向操作,即每調(diào)用一次就會跳到上一個(gè)結(jié)果。 |
Ctrl + R |
Replace |
在當(dāng)前標(biāo)簽頁中進(jìn)行替換操作。(常用) |
Ctrl + Shift + F |
Find in path |
通過路徑查找。(常用) |
Ctrl + Shift + R |
Replace in path |
通過路徑替換。(常用) |
2.1 Ctrl + F (查找)
觸發(fā)后,會打開一個(gè)查找面板:

具體含義如下:
圖示 |
說明 |
向上箭頭 |
就是 快捷鍵【Shift + F3】,每調(diào)用一次就會跳到上一個(gè)結(jié)果。 |
向下箭頭 |
就是 快捷鍵【F3】,每調(diào)用一次就會跳到下一個(gè)結(jié)果。 |
加號符號 |
把當(dāng)前的高亮項(xiàng)加入到選中的列表中。 |
減號符號 |
把當(dāng)前的高亮項(xiàng)從選中的列表中移除。 |
勾選符號 |
把所有的查找結(jié)果同時(shí)選中,這很適合批量操作。 |
文本內(nèi)的向上箭頭 |
打開查詢結(jié)果列表面板。 |
兩個(gè)框加一個(gè)向下箭頭 |
更多選項(xiàng)。 |
Match Case |
是否大小寫敏感。 |
Regex |
正則表達(dá)式。 |
Words |
匹配單詞。 |
x matches |
x 表示的是找到的記錄數(shù)。 |
勾選符號選中效果:

點(diǎn)擊文本內(nèi)的向上箭頭,打開后的查詢結(jié)果列表面板:

兩個(gè)框加一個(gè)向下箭頭,會變成一個(gè)大文本輸入框,而且還多出一個(gè)查看搜索歷史的按鈕:

2.2 Ctrl + Shift + F (通過路徑查找)

3 查看使用情況【Usage Search】
主要是查看當(dāng)前光標(biāo)所在內(nèi)容使用情況。
快捷鍵 |
英文說明 |
中文說明 |
Alt + F7 |
Find usages |
在當(dāng)前項(xiàng)目中的使用情況,會打開一個(gè)使用情況面板。 |
Ctrl + F7 |
Find usages in file |
在當(dāng)前文件中的使用情況,找的內(nèi)容會低亮顯示。 |
Ctrl + Shift + F7 |
在當(dāng)前文件中的使用情況,找的內(nèi)容會高亮顯示。 |
|
Ctrl + Alt + F7 |
Show usages |
打開使用情況列表。 (常用) |
3.1 Ctrl + Alt + F7(打開使用情況列表)

4 編譯與運(yùn)行【Compile and Run】
快捷鍵 |
英文說明 |
中文說明 |
Ctrl + F9 |
Make project (compile modifed and dependent) |
編譯項(xiàng)目(如果之前有編譯過,那么只會編譯那些修改的類或者依賴的包)。 |
Ctrl + Shift + F9 |
Compile selected file, package or module |
編譯所中的范圍(如果在某個(gè)類中,那么只會編譯當(dāng)前類)。 |
Alt + Shift + F10 |
Select configuration and run |
會打開一個(gè)已經(jīng)配置的運(yùn)行列表,讓你選擇一個(gè)后,再運(yùn)行。 |
Alt + Shift + F9 |
Select configuration and debug |
會打開一個(gè)已經(jīng)配置的運(yùn)行列表,讓你選擇一個(gè)后,再以調(diào)試模式運(yùn)行。 |
Shift + F10 |
Run |
立即運(yùn)行當(dāng)前配置的運(yùn)行實(shí)例,這個(gè)在單元測試中特別好用。 (常用) |
Shift + F9 |
Debug |
立即以編譯模式運(yùn)行當(dāng)前配置的運(yùn)行實(shí)例。 |
Ctrl + Shift + F10 |
Run context configuration from editor |
按照編輯器綁定的文件類型,運(yùn)行相關(guān)的程序。比如一個(gè) html 頁面,調(diào)用后,會直接打開一個(gè)瀏覽器。 |
4.1 Alt + Shift + F10(打開運(yùn)行列表,選擇一個(gè)運(yùn)行)

5 調(diào)試【Debugging】
快捷鍵 |
英文說明 |
中文說明 |
F8 |
Step over |
跳到當(dāng)前代碼下一行。 (常用) |
F7 |
Step into |
跳入到調(diào)用的方法內(nèi)部代碼。 (常用) |
Shift + F7 |
Smart step into |
會打開一個(gè)面板,讓你選擇具體要跳入的類方法,這個(gè)在復(fù)雜的嵌套代碼中特別有用。 |
Shift + F8 |
Step out |
跳出當(dāng)前的類,到上一級。 (常用) |
Alt + F9 |
Run to cursor |
讓代碼運(yùn)行到當(dāng)前光標(biāo)所在處,非常棒的功能。 (常用) |
Alt + F8 |
Evaluate expression |
打開一個(gè)表達(dá)式面板,然后進(jìn)行進(jìn)一步的計(jì)算。 |
F9 |
Resume program |
結(jié)束當(dāng)前斷點(diǎn)的本輪調(diào)試(因?yàn)橛锌赡艽a會被調(diào)用多次,所以調(diào)用后只會結(jié)束當(dāng)前的這一次);如果有下一個(gè)斷點(diǎn)會跳到下一個(gè)斷點(diǎn)中。(常用) |
Ctrl + F8 |
Toggle breakpoint |
在當(dāng)前光標(biāo)處,添加或者刪除斷點(diǎn)。 |
Ctrl + Shift + F8 |
View breakpoints |
打開當(dāng)前斷點(diǎn)的面板,可以進(jìn)行條件過濾哦。 |
5.1 Shift + F7(選擇具體要跳入的類方法)

5.2 Alt + F8 (計(jì)算表達(dá)式)
注意:要在當(dāng)前斷點(diǎn)之前的代碼中,選擇某一個(gè)變量運(yùn)行才有效,因?yàn)橹挥写a運(yùn)行過了,才會有值的呀 O(∩_∩)O~

5.3 Ctrl + Shift + F8 (當(dāng)前斷點(diǎn)的面板)

6 導(dǎo)航【Navigation】
快捷鍵 |
英文說明 |
中文說明 |
Ctrl + N |
Go to class |
打開類查詢框。(常用) |
Ctrl + Shift + N |
Go to file |
打開文件查詢框。(常用) |
Ctrl + Alt + Shift + N |
Go to symbol |
打開文本查詢框。 |
Alt + 右箭頭/左箭頭 |
Go to next/previous editor tab |
跳到下一個(gè)/上一個(gè)編輯器標(biāo)簽。 |
F12 |
Go back to previous tool window |
如果當(dāng)前在編輯窗口,觸發(fā)后,會跳到之前操作過的工具欄上。 |
ESC |
Go to editor (from tool window) |
從工具欄上,再跳回原來的編輯窗口,一般與 F12 配合使用。 |
Shift + ESC |
Hide active or last active window |
隱藏最后一個(gè)處于活躍狀態(tài)的工具窗口。 |
Ctrl + Shift + F4 |
Close active run/messages/find/… tab |
同時(shí)關(guān)閉處于活動狀態(tài)的某些工具欄窗口。 |
Ctrl + G |
Go to line |
跳轉(zhuǎn)至某一行代碼。。(常用) |
Ctrl + E |
Recent files popup |
打開曾經(jīng)操作過的文件歷史列表。 |
Ctrl + Alt + 右箭頭/左箭頭 |
Navigate back/forward |
在曾經(jīng)瀏覽過的代碼行中來回跳 |
Ctrl + Shift + Backspace |
Navigate to last edit location |
跳轉(zhuǎn)到最近的編輯位置(如果曾經(jīng)編輯過代碼)。 |
Alt + F1 |
Select current file or symbol in any view |
打開一個(gè)類型列表,選擇后會導(dǎo)航到當(dāng)前文件或者內(nèi)容的具體與類型相關(guān)的面板中。 |
Ctrl + B 或 Ctrl + 鼠標(biāo)左鍵 |
Go to declaration |
如果是類,那么會跳轉(zhuǎn)到當(dāng)前光標(biāo)所在的類定義或者接口;如果是變量,會打開一個(gè)變量被引用的列表。(常用) |
Ctrl + Alt + B |
Go to implementation(s) |
跳轉(zhuǎn)到實(shí)現(xiàn)類,而不是接口。(常用) |
Ctrl + Shift + I |
Open quick definition lookup |
打開一個(gè)面板,里面包含類代碼。 |
Ctrl + Shift + B |
Go to type declaration |
打開變量的類型所對應(yīng)的類代碼,只對變量有用。 |
Ctrl + U |
Go to super-method/super-class |
打開方法的超類方法或者類的超類,只對有超類的方法或者類有效。 |
Alt + 上/下箭頭 |
Go to previous/next method |
在某個(gè)類中,跳到上一個(gè)/下一個(gè)方法的簽名上。 |
Ctrl + ]/[ |
Move to code block end/start |
移動光標(biāo)到類定義的終止右大括號或者起始左大括號。 |
Ctrl + F12 |
File structure popup |
打開類的結(jié)構(gòu)列表。(常用) |
Ctrl + H |
Type hierarchy |
打開類的繼承關(guān)系列表。(常用) |
Ctrl + Shift + H |
Method hierarchy |
打開某個(gè)類方法的繼承關(guān)系列表。 |
Ctrl + Alt + H |
Call hierarchy |
打開所有類的方法列表,這些方法都調(diào)用了當(dāng)前光標(biāo)所處的某個(gè)類方法。(常用) |
F2/Shift + F2 |
Next/previous highlighted error |
在編譯錯(cuò)誤的代碼行中來回跳。 |
F4 |
Edit source |
打開當(dāng)前光標(biāo)所在處的方法或類源碼。 |
Alt + Home |
Show navigation bar |
激活包路徑的導(dǎo)航欄。 |
F11 |
Toggle bookmark |
把光標(biāo)所處的代碼行添加為書簽或者從書簽中刪除。(常用) |
Ctrl + F11 |
Toggle bookmark with mnemonic |
把光標(biāo)所處的代碼行添加為帶快捷鍵的書簽或者從快捷鍵書簽中刪除。 |
Ctrl + [0-9] |
Go to numbered bookmark |
跳轉(zhuǎn)到之前定義的快捷鍵書簽。 |
Shift + F11 |
Show bookmarks |
打開書簽列表。(常用) |
6.1 Ctrl + N (打開類查詢框)
鍵入類名的關(guān)鍵字,會自動出現(xiàn)相關(guān)的類哦,右側(cè)還有一個(gè)勾選項(xiàng),能夠把引用的 jar 包中的類也加進(jìn)來,很強(qiáng)大 O(∩_∩)O~

6.2 Ctrl + Alt + 右箭頭/左箭頭(在曾經(jīng)瀏覽過的代碼行中來回跳)
如果操作系統(tǒng)裝的是 NVIDIA 顯卡驅(qū)動程序,那么觸發(fā)這個(gè)熱鍵,會把旋轉(zhuǎn)顯示內(nèi)容,而不是觸發(fā) idea 的功能,因?yàn)?idea 熱鍵被 NVIDIA 顯卡驅(qū)動給劫持咯。
解決方法是禁用 NVIDIA 顯卡驅(qū)動所有快捷鍵,:
1、控制面板-》顯示-》屏幕分辨率:

2、點(diǎn)擊【高級設(shè)置】-》核芯顯卡控制面板:

3、圖形屬性-》選項(xiàng)與支持-》禁用所有快捷鍵(這些快捷鍵幾乎沒有什么用處?。?/p>

6.3 Alt + F1(打開一個(gè)類型列表)

6.4 F11(添加為書簽或者從書簽中刪除)
書簽不是默認(rèn)視圖,所以我們要把它添加到當(dāng)前視圖中:View -> Tool Windows -> Favorites,打開 Favorites 面板:

Favorites 面板中的 Bookmarks 就是我們添加的書簽哦:

或者直接使用 Shift + F11,打開書簽列表也可以的哦 O(∩_∩)O~。
6.5 Ctrl + F11 (添加或刪除帶快捷鍵的書簽)
會打開一個(gè)設(shè)置快捷鍵的面板,比如這里點(diǎn)擊了 1,那么它的快捷鍵就是 Ctrl + 1。
注意不要選擇面板提供的 26 個(gè)大寫字母,因?yàn)檫@會與 idea 的其他快捷鍵沖突,不知道 idea 為什么要把它們放在這里?好奇怪 O(∩_∩)O~

|