21套精品Java架构师高并发高性能高可用分布式集群教程(4000G)
现代的JVM语言例如Kotlin,Groovy,Scala等都提供了许多的语言特性来让你使用更简洁的方式来编写代码。总结来说,现代的JVM语言中的表达方式不外乎*类型推断*、*属性*,*字符串插值*、*范围操作*、*元数据处理*、*操作符增强*、*智能类型转换*等等。Java自从Java 8开始也引入了Lambda语法等,使得代码更简洁而更具表现力。
用过Intellij IDEA的同学都知道,在Java 8之前,IntelliJ IDEA使用了它的折叠特性来模拟lambda语法,使代码更具可读性:
当你点击左边的展开或者鼠标移动到被折叠的代码上的时候,你会看见:
当你使用的是Java 7或者以前的版本。 IntelliJ IDEA会折叠类似上面的代码,以便更好阅读。
由于我个人是Kotlin的忠实粉丝,但是每天都要编写大量的Java,所以需要扩展IDE的折叠功能,以模拟其他一些现代语言的功能来消除代码的冗长。
因此。在这篇博文中,我想简单地分享一些最有趣的功能。并且在文章的最后会把这个东西分享给大家——它其实就是一个IDEA的插件。
字符串插值
在日常开发中,我们经常会看到这样的代码:
其实如果Java提供了字符串插值之后,代码应该就是这样的:
这样看起来是不是比Java原来的简单的多了。这个插件做到了。
连接字符串
我们来看这一个例子:
上面的代码我们很常見吧,当我们使用这个插件之后。我们打开一个文件,看到的是:
是不是清爽很多。
分割字符串和列表
再来看这个例子:
这里我们要求添加一个子串,如果Java提供了Python提供的分片操作的话?
如果您在插件中启用相应的选项,您将获得Java代码中显示如下:
当然如果你觉得这个看起来还不如你原来的好看,可以关掉这个选项。
变量声明
下面我们来看这个例子:
上面的代码中有大量的int的类型,所以都是可变的变量。看起来的确是有那么一点点难受。而假设能让Java有类型推断的功能的话。代码就可以变成这样的模式:
仔细对比上下是不是清爽很多。
## For循环
for循环应该是我们代码中很经常遇到的代码块。并且读起来真心是很蛋疼。例如下面的一个代码片段:
使用了这个插件之后就变成了:
## Equal
再来一个例子:
上面是很多IDE没人的equal生成的样子。大家应该很熟悉这个。使用了这个插件之后,就变成下面的样子:
当然同理,not equal的情况下是这样子的:
还有好多好多的很酷的样子适合大家来使用。当然。使用这个插件你编写的代码还是原来的Java代码。只是在可读性上面比较好点。这个插件仅仅适用于都代码。大家如果要真的写成这样的话。Scala或者Kotlin是不二法则。
说了这么多:大家一定很好奇什么插件吧。大家在IDEA的插件中心搜索 advanced java folder就有了。如果大家对于这个插件有什么看法的话可以随时留言。希望大家多交流。
点击加入java开发者交流群【欢迎入群】
视频资源下载
21套精品Java架构师高并发高性能高可用分布式集群教程(4000G)
专注互联网热点信息,java干货,行业最新技术视频分享,我们的宗旨就是做全网最全最大的java视频教免费平台。我们有适合不同阶段人群的干货。我们的平台聚焦了几万的java高级程序员和架构师。欢迎长按关注