IntelliJ IDEA 超實(shí)用技巧分享存璃,不能再全了!

前言

工欲善其事

必先利其器

最近受部門的邀請雕拼,給入職新人統(tǒng)一培訓(xùn)IDEA纵东,發(fā)現(xiàn)有很多新人雖然日常開發(fā)使用的是IDEA,但是還是很多好用的技巧沒有用到啥寇,只是用到一些基本的功能偎球,蠻浪費(fèi)IDEA這個(gè)優(yōu)秀的IDE。如果你沒有激活碼辑甜,關(guān)注公眾號(hào)Java技術(shù)椞鸪鳎回復(fù)idea可以閱讀正規(guī)獲取激活碼的幾種獲取方式。

同時(shí)栈戳,在這次分享之后,本人自己也學(xué)習(xí)到了一些新的使用技巧难裆,所以借著這次機(jī)會(huì)子檀,一起分享出來。希望可以幫到一些人乃戈。

基于的 IDEA 版本信息:IntelliJ IDEA 2018.2.2 (Ultimate Edition)

知識(shí)點(diǎn)概覽:

  • 高效率配置

  • 日常使用 必備快捷鍵(★★)

    • 查找

    • 跳轉(zhuǎn)切換

    • 編碼相關(guān)

    • 代碼閱讀相關(guān)

    • 版本管理相關(guān)

  • 編碼效率相關(guān)(★★)

    • 文件代碼模板

    • 實(shí)時(shí)代碼模板

    • 其他

  • 代碼調(diào)試 源碼閱讀相關(guān)(★★★)

    • 視圖模式

    • 代碼調(diào)試

    • ...

  • 插件方面

    • 插件的安裝與使用

    • 插件推薦

  • 參考


高效率配置

1. 代碼提示不區(qū)分大小寫

Settings -> Editor -> General -> Code Completion

image

(低版本 將 Case sensitive completion 設(shè)置為 None 就可以了)

2. 自動(dòng)導(dǎo)包功能及相關(guān)優(yōu)化功能

Settings -> Editor -> General -> Auto Import

image

3. CTRL + 滑動(dòng)滾輪 調(diào)整窗口顯示大小

Settings -> Editor -> General -> Change font size (Zoom) with Ctrl+Mouse wheel

image

選擇之后褂痰,就可以通過CTRL+滑動(dòng)滾輪的方式,調(diào)整編輯器窗口的字體大小

4. tab 多行顯示

這點(diǎn)因人而異症虑,有些人喜歡直接取消所有tab缩歪,改用快捷鍵的方式,我屏幕比較大谍憔,所以喜歡把tab全部顯示出來匪蝙。

Window -> Editor Tabs -> Tabs Placement,取消勾選 Show Tabs In Single Row選項(xiàng)习贫。

image

效果如下:

image

5. 代碼編輯區(qū)顯示行號(hào)

Settings -> Editor -> General -> Appearance勾選 Show Line Numbers

image
image

6....

日常使用 必備快捷鍵(★★)

查找

快捷鍵 介紹
Ctrl + F 在當(dāng)前文件進(jìn)行文本查找
Ctrl + R 在當(dāng)前文件進(jìn)行文本替換
Shift + Ctrl + F 在項(xiàng)目進(jìn)行文本查找
Shift + Ctrl + R 在項(xiàng)目進(jìn)行文本替換
Shift + Shift 快速搜索
Ctrl + N 查找class
Ctrl + Shift + N 查找文件
Ctrl + Shift + Alt + N 查找symbol(查找某個(gè)方法名)

跳轉(zhuǎn)切換

快捷鍵 介紹
Ctrl + E 最近文件
Ctrl + Tab 切換文件
Ctrl + Alt + ←/→ 跳轉(zhuǎn)歷史光標(biāo)所在處
Alt + ←/→ 方向鍵 切換子tab
Ctrl + G go to(跳轉(zhuǎn)指定行號(hào))

編碼相關(guān)

快捷鍵 介紹
Ctrl + W 快速選中
(Shift + Ctrl) + Alt + J 快速選中同文本
Ctrl + C/Ctrl + X/Ctrl + D 快速復(fù)制或剪切
多行選中 Tab / Shift + Tab tab
Ctrl + Y 刪除整行
滾輪點(diǎn)擊變量/方法/類 快速進(jìn)入變量/方法/類的定義處
Shift + 點(diǎn)擊Tab 快速關(guān)閉tab
Ctrl + Z 逛球、Ctrl + Shift + Z 后悔藥,撤銷/取消撤銷
Ctrl + Shift + enter 自動(dòng)收尾苫昌,代碼自動(dòng)補(bǔ)全
Alt + enter IntelliJ IDEA 根據(jù)光標(biāo)所在問題颤绕,提供快速修復(fù)選擇,光標(biāo)放在的位置不同提示的結(jié)果也不同
Alt + ↑/↓ 方法快速跳轉(zhuǎn)
F2 跳轉(zhuǎn)到下一個(gè)高亮錯(cuò)誤 或 警告位置
Alt + Insert 代碼自動(dòng)生成祟身,如生成對象的 set / get 方法奥务,構(gòu)造函數(shù),toString() 等
Ctrl + Shift + L 格式化代碼
Shift + F6 快速修改方法名袜硫、變量名氯葬、文件名、類名等
Ctrl + F6 快速修改方法簽名

代碼閱讀相關(guān)

快捷鍵 介紹
Ctrl + P 方法參數(shù)提示顯示
Ctrl + Shift + i 就可以在當(dāng)前類里再彈出一個(gè)窗口出來
Alt + F7 可以列出變量在哪些地方被使用了
光標(biāo)在子類接口名婉陷,Ctrl + u 跳到父類接口
Alt + F1 + 1溢谤, esc
(Shift) + Ctrl + +/- 代碼塊折疊
Ctrl + Shift + ←/→ 移動(dòng)窗口分割線
Ctrl + (Alt) + B 跳轉(zhuǎn)方法定義/實(shí)現(xiàn)
Ctrl + H 類的層級關(guān)系
Ctrl + F12 Show Members 類成員快速顯示

版本管理相關(guān)

快捷鍵 介紹
Ctrl + D Show Diff
(Shift) + F7 (上)下一處修改

更多快捷鍵請參考此文章 https://github.com/judasn/Int...

mac os 快捷鍵請參考本文章 https://github.com/judasn/Int...

編碼效率相關(guān)(★★)

文件代碼模板

Settings -> Editor -> File and Code Template

image

在這里可以看到IDEA所有內(nèi)置的文件代碼模板瞻凤,當(dāng)你選擇某個(gè)文件生成時(shí),就會(huì)按照這里面的模板生成指定的代碼文件世杀。

另外阀参,你可以在這里設(shè)置文件頭。

image

設(shè)置之后瞻坝,效果如下

image

實(shí)時(shí)代碼模板

IDEA提供了強(qiáng)大的實(shí)時(shí)代碼模板功能蛛壳,并且原生內(nèi)置了很多的模板,比如所刀,當(dāng)你輸入sout或者psvm衙荐,就會(huì)快速自動(dòng)生成System.out.println();public static void main(String[] args) {}的代碼塊。

image
image

這些的模板可以在Settings -> Editor -> Live Templates看到浮创。使用者可以按照自己的使用習(xí)慣來熟悉相關(guān)的代碼模板忧吟。

image

定制代碼模板

IDEA也提供自己定制實(shí)時(shí)代碼模板的功能。

  1. 創(chuàng)建自己的模板庫

  2. 創(chuàng)建定制的代碼模板

image

圖中的MyGroup就存放著我自己定義的代碼模板斩披。

其他

CRTL+ALT+T

image

Ctrl + Alt + T 提供的是代碼塊包裹功能 - Surround With溜族。可以快速將選中的代碼塊垦沉,包裹到選擇的語句塊中煌抒。

本地歷史版本

IDEA 自帶本地版本管理的功能,能夠讓你本地編寫代碼變得更加的安心和方便厕倍。

image

代碼調(diào)試 源碼閱讀相關(guān)(★★★)

視圖模式

image

IDEA提供兩種特殊的視圖模式寡壮,

  1. Presentation Mode - 演示模式,專門用于Code Review這種需要展示代碼的場景

  2. Distraction Free Mode - 禪模式讹弯,專注于代碼開發(fā)

代碼調(diào)試

1. 條件斷點(diǎn)

IDEA 可以設(shè)置指定條件的斷點(diǎn)况既,增加我們調(diào)試的效率。IntelliJ IDEA 調(diào)試 Java 8 Stream组民,推薦看下坏挠。

image

2. 強(qiáng)制返回

IDEA 可以在打斷點(diǎn)的方法棧處,強(qiáng)制返回你想要的方法返回值給調(diào)用方邪乍。非常靈活降狠!

image
image

3. 模擬異常

IDEA 可以在打斷點(diǎn)的方法棧處,強(qiáng)制拋出異常給調(diào)用方庇楞。這個(gè)在調(diào)試源碼的時(shí)候非常有用榜配。

image

4. Evaluate Expression

IDEA 還可以在調(diào)試代碼的時(shí)候,動(dòng)態(tài)修改當(dāng)前方法棧中變量的值吕晌,方便我們的調(diào)試蛋褥。

image

插件方面

插件安裝

File -> Setting -> Plugin

插件安裝,可以直接在IDEA的插件庫中實(shí)時(shí)搜索安裝睛驳。browse plugin repository

對于網(wǎng)絡(luò)不好的用戶烙心,可以登錄官方插件倉庫地址:https://plugins.jetbrains.com...膜廊,下載壓縮包之后,選擇install from disk

插件推薦

本人日常開發(fā)中使用的插件淫茵,如果你沒有激活碼爪瓜,關(guān)注公眾號(hào)Java技術(shù)棧回復(fù)idea可以閱讀正規(guī)獲取激活碼的幾種獲取方式匙瘪。

Alibaba Java Coding Guidelines

阿里Java編程規(guī)約插件铆铆,關(guān)注公眾號(hào)Java核心技術(shù)回復(fù)手冊獲取一份阿里最新Java開發(fā)手冊。

FindBugs

代碼缺陷掃描

image
image

PMD

代碼缺陷掃描

InnerBuilder

builder模式快速生成

image

lombok plugin

lombok 插件

maven helper

maven 依賴管理助手 丹喻,解析maven pom結(jié)構(gòu)薄货,分析沖突;

image
image

Rainbow brackets

讓代碼中的括號(hào)更具標(biāo)識(shí)性

image

String Manipulation

String相關(guān)輔助簡化碍论,搭配 CTRL+W 谅猾、ALT+J等文本選擇快捷鍵使用

image

Translation

翻譯插件,閱讀源碼必備

image
image

GenerateAllSetter

image

GenerateSerialVersionUID

Alt + Insert 快速生成SerialVersionUID

image

GsonFormat

image

RestfulToolkit

  1. 快速跳轉(zhuǎn)到Restful Api處( use: Ctrl(Command) + or Ctrl + Alt + N )

  2. 展示Resultful 接口結(jié)構(gòu)

  3. http 簡單請求工具

image
image

Material Theme UI

本人自用的主題就是這個(gè)鳍悠。

image

MyBatis Log Plugin

把 Mybatis 輸出的sql日志還原成完整的sql語句税娜,看起來更直觀。

image

Free Mybatis

MyBatis 免費(fèi)的插件

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末贼涩,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子薯蝎,更是在濱河造成了極大的恐慌遥倦,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件占锯,死亡現(xiàn)場離奇詭異袒哥,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)消略,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進(jìn)店門堡称,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人艺演,你說我怎么就攤上這事却紧。” “怎么了胎撤?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵晓殊,是天一觀的道長。 經(jīng)常有香客問我伤提,道長巫俺,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任肿男,我火速辦了婚禮介汹,結(jié)果婚禮上却嗡,老公的妹妹穿的比我還像新娘。我一直安慰自己嘹承,他們只是感情好窗价,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著赶撰,像睡著了一般舌镶。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上豪娜,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天餐胀,我揣著相機(jī)與錄音,去河邊找鬼瘤载。 笑死否灾,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的鸣奔。 我是一名探鬼主播墨技,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼挎狸!你這毒婦竟也來了扣汪?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤锨匆,失蹤者是張志新(化名)和其女友劉穎崭别,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體恐锣,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡茅主,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了土榴。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片诀姚。...
    茶點(diǎn)故事閱讀 40,030評論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖玷禽,靈堂內(nèi)的尸體忽然破棺而出赫段,到底是詐尸還是另有隱情,我是刑警寧澤矢赁,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布瑞佩,位于F島的核電站,受9級特大地震影響坯台,放射性物質(zhì)發(fā)生泄漏炬丸。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望稠炬。 院中可真熱鬧焕阿,春花似錦、人聲如沸首启。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽毅桃。三九已至褒纲,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間钥飞,已是汗流浹背莺掠。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留读宙,地道東北人彻秆。 一個(gè)月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像结闸,于是被迫代替她去往敵國和親唇兑。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容

  • IDEA 超實(shí)用使用技巧分享(長篇) 前言 工欲善其事? 必先利其器 最近受部門的邀請桦锄,給入職新人統(tǒng)一培訓(xùn)IDEA...
    Richard_易閱讀 4,984評論 1 27
  • 最近受部門的邀請扎附,給入職新人統(tǒng)一培訓(xùn)IDEA,發(fā)現(xiàn)有很多新人雖然日常開發(fā)使用的是IDEA结耀,但是還是很多好用的技巧沒...
    元?dú)廛浖?/span>閱讀 252評論 0 0
  • IntelliJ Idea 常用快捷鍵列表 Alt+回車 導(dǎo)入包,自動(dòng)修正 Ctrl+N 查找類 Ctrl+Shi...
    Cytzrs閱讀 2,872評論 1 13
  • 久違的晴天留夜,家長會(huì)。 家長大會(huì)開好到教室時(shí)饼记,離放學(xué)已經(jīng)沒多少時(shí)間了香伴。班主任說已經(jīng)安排了三個(gè)家長分享經(jīng)驗(yàn)慰枕。 放學(xué)鈴聲...
    飄雪兒5閱讀 7,523評論 16 22
  • 今天感恩節(jié)哎具则,感謝一直在我身邊的親朋好友。感恩相遇具帮!感恩不離不棄博肋。 中午開了第一次的黨會(huì),身份的轉(zhuǎn)變要...
    迷月閃星情閱讀 10,567評論 0 11