Intellij IDEA神器居然還有這些小技巧
概述
Intellij IDEA真是越用越覺得它強(qiáng)大,它總是在我們寫代碼的時(shí)候,不時(shí)給我們來(lái)個(gè)小驚喜。出于對(duì)Intellij IDEA的喜愛,我決定寫一個(gè)與其相關(guān)的專欄或者系列,把一些好用的Intellij IDEA技巧分享給大家。本文是這個(gè)系列的第一篇,主要介紹一些你可能不知道的但是又實(shí)用的小技巧。
我最愛的【演出模式】
我們可以使用【Presentation Mode】,將IDEA弄到最大,可以讓你只關(guān)注一個(gè)類里面的代碼,進(jìn)行毫無(wú)干擾的coding。
可以使用Alt+V快捷鍵,彈出View視圖,然后選擇Enter Presentation Mode。效果如下:

這個(gè)模式的好處就是,可以讓你更加專注,因?yàn)槟阒荒芸吹教囟硞€(gè)類的代碼??赡茏x者會(huì)問,進(jìn)入這個(gè)模式后,我想看其他類的代碼怎么辦?這個(gè)時(shí)候,就要考驗(yàn)?zāi)憧旖萱I的熟練程度了。你可以使用CTRL+E彈出最近使用的文件。又或者使用CTRL+N和CTRL+SHIFT+N定位文件。
如何退出這個(gè)模式呢?很簡(jiǎn)單,使用ALT+V彈出view視圖,然后選擇Exit Presentation Mode 即可。但是我強(qiáng)烈建議你不要這么做,因?yàn)槟闶强梢栽?code>Enter Presentation Mode模式下在IDEA里面做任何事情的。當(dāng)然前提是,你對(duì)IDEA足夠熟練。
神奇的Inject language
如果你使用IDEA在編寫JSON字符串的時(shí)候,然后要一個(gè)一個(gè)\去轉(zhuǎn)義雙引號(hào)的話,就實(shí)在太不應(yīng)該了,又煩又容易出錯(cuò)。在IDEA可以使用Inject language幫我們自動(dòng)轉(zhuǎn)義雙引號(hào)。

先將焦點(diǎn)定位到雙引號(hào)里面,使用alt+enter快捷鍵彈出inject language視圖,并選中
Inject language or reference。

選擇后,切記,要直接按下enter回車鍵,才能彈出inject language列表。在列表中選擇 json組件。

選擇完后。鼠標(biāo)焦點(diǎn)自動(dòng)會(huì)定位在雙引號(hào)里面,這個(gè)時(shí)候你再次使用alt+enter就可以看到

選中Edit JSON Fragment并回車,就可以看到編輯JSON文件的視圖了。

可以看到IDEA確實(shí)幫我們自動(dòng)轉(zhuǎn)義雙引號(hào)了。如果要退出編輯JSON信息的視圖,只需要使用ctrl+F4快捷鍵即可。
Inject language可以支持的語(yǔ)言和操作多到你難以想象,讀者可以自行研究。
使用快捷鍵移動(dòng)分割線
假設(shè)有下面的場(chǎng)景,某個(gè)類的名字在project視圖里被擋住了某一部分。

你想完整的看到類的名字,該怎么做。一般都是使用鼠標(biāo)來(lái)移動(dòng)分割線,但是這樣子效率太低了??梢允褂?code>alt+1把鼠標(biāo)焦點(diǎn)定位到project視圖里,然后直接使用ctrl+shift+左右箭頭來(lái)移動(dòng)分割線。
ctrl+shift+enter不只是用來(lái)行尾加分號(hào)的
ctrl+shift+enter其實(shí)是表示為您收尾的意思,不只是用來(lái)給代碼加分號(hào)的。比如說(shuō):

這段代碼,我們還需要為if語(yǔ)句加上大括號(hào)才能編譯通過,這個(gè)時(shí)候你直接輸入ctrl+shift+enter,IDEA會(huì)自動(dòng)幫你收尾,加上大括號(hào)的。
不要?jiǎng)硬粍?dòng)就使用IDEA的重構(gòu)功能
IDEA的重構(gòu)功能非常強(qiáng)大,但是也有時(shí)候,在單個(gè)類里面,如果只是想批量修改某個(gè)文本,大可不必使用到重構(gòu)的功能。比如說(shuō):

上面的代碼中,有5個(gè)地方用到了rabbitTemplate文本,如何批量修改呢?
首先是使用ctrl+w選中rabbitTemplate這個(gè)文本,然后依次使用5次alt+j快捷鍵,逐個(gè)選中,這樣五個(gè)文本就都被選中并且高亮起來(lái)了,這個(gè)時(shí)候就可以直接批量修改了。

去掉導(dǎo)航欄
去掉導(dǎo)航欄,因?yàn)槠綍r(shí)用的不多。

可以把紅色的導(dǎo)航欄去掉,讓IDEA顯得更加干凈整潔一些。使用alt+v,然后去掉Navigation bar即可。去掉這個(gè)導(dǎo)航欄后,如果你偶爾還是要用的,直接用alt+home就可以臨時(shí)把導(dǎo)航欄顯示出來(lái)。

如果想讓這個(gè)臨時(shí)的導(dǎo)航欄消失的話,直接使用esc快捷鍵即可。
把鼠標(biāo)定位到project視圖里
當(dāng)工程里的包和類非常多的時(shí)候,有時(shí)候我們想知道當(dāng)前類在project視圖里是處在哪個(gè)位置。

上面圖中的DemoIDEA里,你如何知道它是在spring-cloud-config工程里的哪個(gè)位置呢?
可以先使用alt+F1,彈出Select in視圖,然后選擇Project View中的Project,回車,就可以立刻定位到類的位置了。

那如何從project跳回代碼里呢?可以直接使用esc退出project視圖,或者直接使用F4,跳到代碼里。
強(qiáng)大的symbol
如果你依稀記得某個(gè)方法名字幾個(gè)字母,想在IDEA里面找出來(lái),可以怎么做呢?
直接使用ctrl+shift+alt+n,使用symbol來(lái)查找即可。
比如說(shuō):

你想找到checkUser方法。直接輸入user即可。

如果你記得某個(gè)業(yè)務(wù)類里面有某個(gè)方法,那也可以使用首字母找到類,然后加個(gè).,再輸入方法名字也是可以的。

如何找目錄
使用ctrl+shift+n后,使用/,然后輸入目錄名字即可.

自動(dòng)生成not null判斷語(yǔ)句
自動(dòng)生成not null這種if判斷,在IDEA里有很多種辦法,其中一種辦法你可能沒想到。

當(dāng)我們使用rabbitTemplate. 后,直接輸入notnull并回車,IDEA就好自動(dòng)生成if判斷了。

按照模板找內(nèi)容
這個(gè)也是我非常喜歡的一個(gè)功能,可以根據(jù)模板來(lái)找到與模板匹配的代碼塊。比如說(shuō):
想在整個(gè)工程里面找到所有的try catch語(yǔ)句,但是catch語(yǔ)句里面沒有做異常處理的。
catch語(yǔ)句里沒有處理異常,是極其危險(xiǎn)的。我們可以IDEA里面方便找到所有這樣的代碼。

首先使用ctrl+shift+A快捷鍵彈出action框,然后輸入Search Struct

選擇Search Structurally后,回車,跳轉(zhuǎn)到模板視圖。

點(diǎn)擊Existing Templates按鈕,選擇try模板。為了能找出catch里面沒有處理異常的代碼塊,我們需要配置一下CatchStatement的Maximum count的值,將其設(shè)置為1。
點(diǎn)擊Edit Variables按鈕,在界面修改Maximum count的值。

最后點(diǎn)擊find按鈕,就可以找出catch里面沒有處理異常的代碼了。

如果文章還行,請(qǐng)幫忙點(diǎn)一下贊哈。如下圖:

到此這篇關(guān)于Intellij IDEA神器居然還有這些小技巧的文章就介紹到這了,更多相關(guān)IDEA小技巧內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
springboot實(shí)現(xiàn)SSE(Server?Sent?Event)的示例代碼
SSE?全稱Server?Sent?Event,直譯一下就是服務(wù)器發(fā)送事件,本文主要為大家詳細(xì)介紹了springboot實(shí)現(xiàn)SSE的相關(guān)知識(shí),需要的可以參考一下2024-04-04
詳解eclipse項(xiàng)目中.classpath文件的使用
這篇文章主要介紹了詳解eclipse項(xiàng)目中.classpath文件的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
Maven統(tǒng)一版本管理的實(shí)現(xiàn)
在使用Maven多模塊結(jié)構(gòu)工程時(shí),配置版本是一個(gè)比較頭疼的事,本文主要介紹了Maven統(tǒng)一版本管理的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03
Maven pom.xml 添加本地jar包依賴以及打包方法
這篇文章主要介紹了Maven pom.xml 添加本地jar包依賴以及打包方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
Springboot項(xiàng)目參數(shù)校驗(yàn)方式(Validator)
本文介紹了如何在Spring Boot項(xiàng)目中使用`spring-boot-starter-validation`包和注解來(lái)實(shí)現(xiàn)請(qǐng)求參數(shù)校驗(yàn),主要介紹了校驗(yàn)注解的使用方法、校驗(yàn)失敗的異常捕獲以及`@Validated`的分組功能2025-02-02
解決JSTL foEach標(biāo)簽 刷新報(bào)錯(cuò)的方法
本篇文章是對(duì)JSTL foEach標(biāo)簽刷新報(bào)錯(cuò)的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
使用Feign配置請(qǐng)求頭以及支持Https協(xié)議
這篇文章主要介紹了使用Feign配置請(qǐng)求頭以及支持Https協(xié)議,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
Spring Boot使用JSR-380進(jìn)行校驗(yàn)的示例
這篇文章主要介紹了Spring Boot使用JSR-380進(jìn)行校驗(yàn),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03

