IDEA2020版本正式發佈已經有3個月了,當時因爲各方面緣由(太懶)也沒有去嘗試新功能。因而上個週末特地去在另外一個電腦上下載了最新版的IDEA,並嘗試了一下。總的來講呢,體驗上明顯的提高。java
做爲一個大版本的升級,天然也增長了許多新功能。我的體驗了兩天,程序員
支持Java14,而且能夠直接經過IDE去直接下載JDK完成安裝配置編輯器
發佈官方版漢化插件ide
導航欄優化可直接跳轉至方法或對象所在位置字體
新增Mono字體(人稱最適合程序員的字體)優化
LightEdit模式ui
終端的窗口拆分(水平/垂直拆分)this
Zon(禪)模式idea
javadoc文檔的渲染操作系統
新增新的主題
更加智能的錯誤檢測
用於獲取聲明數據類的方法,只經過一行代碼就能夠獲取到數據。
public class Range { private final int min; private final int max; public Range(int min, int max) { this.min = min; this.max = max; } public int getMin() { return min; } public int getMax() { return max; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Range range = (Range) o; return min == range.min && max == range.max; } @Override public int hashCode() { return Objects.hash(min, max); } @Override public String toString() { return "Range{" + "min=" + min + ", max=" + max + '}'; } }
如上數據類,無參構造方法;初始化時對成員變量賦值;成員變量只有getter方法;覆寫了 超類 Object 的 equals 、hashCode、toString 方法。
使用Records只須要同樣代碼便可以實現上述功能
public record Range(int min, int max) {}
若是你的IDEA沒有配置JDK,能夠直接在IDEA內部進行JDK下載安裝配置。
咱們常常會使用instanceof運算符將引用變量與類型進行比較的代碼。若是結果爲true ,那麼就能夠將其顯式轉換爲與之比較的類型。
if (obj instanceof String) { String s = (String) obj; System.out.println(s); }
Java 14中的instanceof模式匹配引入了instanceof運算符的模式變量。若是instanceof條件爲true,則模式變量將綁定到要比較的變量,從而避免了顯式強制轉換以使用其成員的須要。
因而咱們能夠改爲這種寫法
if (obj instanceof String s) { System.out.println(s); }
官方此次更新以後支持了漢化版,漢化須要藉助JetBrains官方提供的Chinese (Simplified) Language Pack EAP插件。可經過安裝插件進行漢化
安裝方法:
在Plugins 搜索「Chinese」第一個就是咱們漢化時須要安裝的插件。
我在另一臺電腦試着安裝時,發現搜索不到這個插件。若是有同窗遇到一樣的問題,能夠去IDEA插件中心進行搜索安裝
地址:https://plugins.jetbrains.com/idea
按照提示操做,下載相應的版本,而後進行安裝便可,安裝方式有兩種
直接將插件拖入至IDEA界面便可
漢化以後的界面以下圖所示,目前來看大部份內容已經漢化,還剩一點點菜單內容沒有完成漢化。使用漢化以後忽然居然感受不太會用了,我我的不建議使用漢化的。
導航欄優化
在IDEA2020以後的版本能夠經過點擊.java文件導航到具體的方法或者對象所在的位置。再此以前的版本能夠經過Structure界面進行位置跳轉
一款被稱爲目前最適合程序員的字體,新的版本下載以後自帶了Mono字體。
長時間使用代碼期間減輕眼睛疲勞的問題。同時考慮了字母的大小和形狀等問題;它們之間的空間量,天然以等寬字體設計的平衡;一些看起來沒必要要的細節和符號之間不清楚的區別,例如I和l。
對於舊版本IDEA,若是想自行安裝Mono字體,能夠經過官網自行下載安裝
地址:https://www.jetbrains.com/lp/mono/
能夠理解爲是一個輕量級的編輯器,能夠在不加載項目的狀況下,打開某個文件。
這樣咱們就能夠用IDEA以編輯器的形式去打開Java文件,
若是須要打開並加載文件所在項目,只須要alt+enter以後選擇Open file in project 便可。
這個更新,感受真的提高了很多效率,多個終端在同一界面節省了來回切換的麻煩。
使用時是這樣的,有沒有感受效率提高了很多呢?
一個可讓程序員全身心投入到寫代碼,不受外界干擾的一種模式。
啓用方式以下圖所示:
Enter/Exit Presentation Mode:進入/退出 展現模式
Enter/Exit Distraction Free Mode:進入/退出 免打擾模式
Enter/Exit Full Screen:進入/退出 全屏模式
下圖爲禪模式,整個屏幕就是你的編輯頁面,帶上耳機打開禪模式,真的會有一種瞬間全世界都清淨的感受!
當咱們去閱讀源碼的註釋或者一些幫助文檔API,可能含有各類標記,影響閱讀,而經過javadoc渲染功能以後,會自動祛除一些沒必要要的標題。而且能夠修改字體的大小,方便閱讀!
以下是SimpleDateFormat中javadoc的一部分,是否是給人一種沒法讀下去的感覺。
用了JavaDoc以後呢,它就是這樣的了
在view中點擊Quick Switch Scheme,而後在彈出的對話框中點擊Themes,能夠更換IDEA的主題。
新增了統一的IntelliJ Light主題,這個主題已經在不一樣的操做系統中徹底統一了。不過就我我的而言,仍是更新換用Darcula黑灰色主題風格。
好比咱們在寫日期轉化的時候不當心寫錯了,以下:
public static void main(String[] args){ SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd"); System.out.println("this is a boy"); }
這裏呢,IDEA就會在YYYY字符上進行高亮顯示,鼠標放上去就會提示咱們,點擊下方的Replace ‘YYYY’ with ‘yyyy’ 會自動幫咱們進行替換。
以下代碼
public static void main(String[] args) { int a = 0; while (a < 100) { if (a == 3) { System.out.println("+++++"); } a++; } }
在第5行加了斷點,當咱們debug啓動時,第6行就會進行與判斷False。
執行到a = 3時,會與判斷爲True。
以上就是我這兩天體驗了一下IDEA2020版本以後的測評清單,還有不少功能須要在平時的使用中進行挖掘。若是你們有什麼新功能要分享歡迎留言區進行留言。最後呢,建議你們最好不要使用公司的電腦進行升級,以避免引發沒必要要的麻煩耽誤了正常工做。