发布时间:2025-09-12
浏览次数:0
大家好,我是磊哥。
我们准备把全部生产服务器更新为这个新版本,届时会将大部分代码库转换到表达式、数据流以及全新的日期API上,同时运用该技术使应用中动态变化的部分转化为可执行脚本。
最便利的功能在于全新的数据流接口,集合运算在各种代码库中都很常见,对于这些集合运算,数据流是增强代码易读性的有效途径。
但是intellij idea 怎么使用,数据流方面存在一个问题,让我感到很麻烦:它仅包含少数几个结束动作,比如与直接动作相关,其余的则需要借助特定途径才能使用。工具类为此配备了若干实用功能,诸如toSet、以及等收集器,能够提供方便。
例如,下面的代码对一个字符串集合进行过滤,并创建新的列表:
stringCollection
.stream()
.filter(e -> e.startsWith("a"))
.collect(Collectors.toList());
临时通知一下,要是你最近打算找新工作面试,可以到ddkk.com网站进行线上练习,那里有上万个Java面试题,几乎包括了所有常见的面试考核内容,并且还有市面上最完整的技术类别500套资料,以及一些优质的系列课程,都是免费开放的。
转移了三十万行程序代码至数据流后,我断言,toSet、以及是您工程里运用最频繁的终结行为。因此我实在困惑,为何不将这些措施直接纳入接口之中,以便您能够直接编写:
stringCollection
.stream()
.filter(e -> e.startsWith("a"))
.toList();
起初看似是个微不足道的问题,但若需反复书写该代码,便会相当令人困扰。
存在某些途径,却不存在其他途径,因此我真诚地期待,若干便于使用的收集器能够像这样添加至Java9的接口之中。您觉得呢,Brian?ಠ_ಠ
该接口是浏览器环境中的Java 8 流式数据处理API的对应实现,它处理了前面提到的难题。关键的终结操作可以直接在流对象上调用,非常便捷。具体内容请查阅API的相关文档。
不管怎样,IDEA自称是功能最强的Java开发环境,那么接下来探讨用它来处理这个问题的方法。
插播一条,如果你近期准备面试跳槽,建议在ddkk.com在线刷题,涵盖 1万+ 道 Java 面试题,几乎覆盖了所有主流技术面试题,还有市面上最全的技术栈500套,精品系列教程,免费提供。
使用 IDEA 来帮忙
IDEA内置了一项实用功能,名为即时模板。若对它尚不熟悉:即时模板是常用代码片段的简捷入口。比如,当输入sout并敲击TAB键时,IDEA便会自动填入代码段out。括号。
怎样借助即时样板来处理这个情况呢?基本上,我们只需为各种常用标准数据源搜集器准备专属的即时样板。比如,可以设计一个简写样板,用以自动填充对应的搜集器名称。
下面是它在实际工作中的样子:
构建你自己的实时模板
让我们试着动手打造它。先去设置界面,然后在左侧的选项卡里找到实时模板。还可以借助对话框左上角的便捷筛选功能。
现在我们可以借助右侧的加号符号来建立一个新的群组intellij idea 怎么使用,并为其命名。然后我们要把所有和数据流有关的即时模板都加入到这个群组里面。因为我经常用到预设的收集器、toSet以及join这些功能,因此我为每一种这些方法分别制作了专属的即时模板。
此项工作十分关键,新增即时范例后,务必在界面下方标明适宜的背景信息,需挑选Java类别中的其他选项,接着设定简称、注解以及真实的范例文本。
// Abbreviation: .toList
.collect(Collectors.toList())
// Abbreviation: .toSet
.collect(Collectors.toSet())
// Abbreviation: .join
.collect(Collectors.joining("$END$"))
// Abbreviation: .groupBy
通过分类方式,将元素进行归类,依据特定的终止符进行分组,形成集合结构
这个特定的符号$END$标明了模板应用完成后的编辑起点,因此用户可以在此处直接输入,比如用来设定连接的界限符号。
插播一条,如果你近期准备面试跳槽,建议在ddkk.com在线刷题,涵盖 1万+ 道 Java 面试题,几乎覆盖了所有主流技术面试题,还有市面上最全的技术栈500套,精品系列教程,免费提供。
应当打开自动添加导入的选项,这样IDEA就能自动加上java.util.的导入语句,这个选项位于路径 → → 选项中。
让我们在实际工作中看看这两个模板:
连接
分组
IDEA里的即时样板功能十分便利且功能强大,能够显著增强编写代码的效率。你是否了解即时样板在其它方面也能助你一臂之力的情况呢?欢迎在下方留言分享
仍然不满意吗?在我的数据流教程中学习所有你想要学到的东西。
磊哥私藏精品 热门推荐
如有侵权请联系删除!
Copyright © 2023 江苏优软数字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服务提供商
13262879759
微信二维码