肝了两天IntelliJ IDEA 2020,解锁11种新姿势, 真香!!!
Posted wyl-0120
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了肝了两天IntelliJ IDEA 2020,解锁11种新姿势, 真香!!!相关的知识,希望对你有一定的参考价值。
IDEA2020版本正式发布已经有3个月了,当时由于各方面原因(太懒)也没有去尝试新功能。于是这个周末特意去在另一个电脑上下载了最新版的IDEA,并尝试了一下。总的来说呢,体验上明显的提升。
作为一个大版本的升级,自然也增加了许多新功能。个人体验了两天,
-
支持Java14,并且可以直接通过IDE去直接下载JDK完成安装配置
-
发布官方版汉化插件
-
导航栏优化可直接跳转至方法或对象所在位置
-
新增Mono字体(人称最适合程序员的字体)
-
LightEdit模式
-
终端的窗口拆分(水平/垂直拆分)
-
Zon(禅)模式
-
javadoc文档的渲染a
-
新增新的主题
-
更加智能的错误检测
-
Debug增强预处理
激活方法:https://shimo.im/docs/XXGr3gWJJ8kQjjPx
支持Java14
支持Records
用于获取声明数据类的方法,只通过一行代码就可以获取到数据。
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模式简化
我们经常会使用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界面即可
-
在plugins界面通过导入本地文件进行安装
汉化之后的界面如下图所示,目前来看大部分内容已经汉化,还剩一点点菜单内容没有完成汉化。使用汉化之后突然竟然感觉不太会用了,我个人不建议使用汉化的。
导航栏优化
在IDEA2020之后的版本可以通过点击.java文件导航到具体的方法或者对象所在的位置。再此之前的版本可以通过Structure界面进行位置跳转
新增Mono字体
一款被称为目前最适合程序员的字体,新的版本下载之后自带了Mono字体。
长时间使用代码期间减轻眼睛疲劳的问题。同时考虑了字母的大小和形状等问题;它们之间的空间量,自然以等宽字体设计的平衡;一些看起来不必要的细节和符号之间不清楚的区别,例如I和l。
对于旧版本IDEA,如果想自行安装Mono字体,可以通过官网自行下载安装
地址:https://www.jetbrains.com/lp/mono/
LightEdit模式
可以理解为是一个轻量级的编辑器,可以在不加载项目的情况下,打开某个文件。
这样我们就可以用IDEA以编辑器的形式去打开Java文件,
如果需要打开并加载文件所在项目,只需要alt+enter之后选择Open file in project 即可。
终端的窗口拆分
这个更新,感觉真的提升了不少效率,多个终端在同一界面节省了来回切换的麻烦。
使用时是这样的,有没有感觉效率提升了不少呢?
Zon(禅)模式
一个可以让程序员全身心投入到写代码,不受外界干扰的一种模式。
启用方式如下图所示:
-
Enter/Exit Presentation Mode:进入/退出 展示模式
-
Enter/Exit Distraction Free Mode:进入/退出 免打扰模式
-
Enter/Exit Full Screen:进入/退出 全屏模式
-
Enter/Exit Zen Mode:进入/退出 禅模式(一个终极模式,包含以上3种模式)
下图为禅模式,整个屏幕就是你的编辑页面,带上耳机打开禅模式,真的会有一种瞬间全世界都清净的感觉!
javadoc文档的渲染
当我们去阅读源码的注释或者一些帮助文档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’ 会自动帮我们进行替换。
Debug增强预处理
如下代码
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版本之后的测评清单,还有很多功能需要在平时的使用中进行挖掘。如果大家有什么新功能要分享欢迎留言区进行留言。最后呢,建议大家最好不要使用公司的电脑进行升级,以免引起不必要的麻烦耽误了正常工作。
最后呢,我录制了一个视频上传至B站了,大家可以去看一下。顺便记得点赞哦
https://www.bilibili.com/video/BV1ua4y1a7d7/
文末福利
以上是关于肝了两天IntelliJ IDEA 2020,解锁11种新姿势, 真香!!!的主要内容,如果未能解决你的问题,请参考以下文章
2020 IntelliJ IDEA 激活码,IDEA 注册码,持续更新
IntelliJ IDEA 2020 最新 IDEA 激活码,IDEA 注册码,持续更新
2020 IntelliJ IDEA 2020 最新 IDEA 激活码 (亲测有效,可激活至 2089 年)
2020.1.2 IDEA 正版激活,IntelliJ IDEA 注册码,激活码 2018 2019idea