关于stream中map的用法:
Map
data=new
HashMap<>()
data.put(1,
10)
data.put(2,
20)
data.put(3,
30)
List
list
=
data.entrySet().stream().map(Entry::getValue).collect(Collectors.toList())
System.out.println(list)
结果:[10,
20,
30]
这其中map就是把entry的value值映射出来,最后再用Collectors转成list
关于stream.forEach的用法
map.forEach((k,v)->{
System.out.println(v)
})
纯粹就是用流来实现遍历的语法糖
Stream(流)是一个来自数据源的元素队列并支持聚合 *** 作
<strong元素队列<strong="">元素是特定类型的对象,形成一个队列。 Java中的Stream并不会存储元素,而是按需计算。
数据源 流的来源。 可以是集合,数组,I/O channel, 产生器generator 等。
聚合 *** 作 类似SQL语句一样的 *** 作, 比如filter, map, reduce, find, match, sorted等。
可以试试这个输出什么:
String[] strarr = {"abc", "defg", "vwxyz"}
int iSum = Arrays.stream(strarr)
.mapToInt(s ->s.length())
.sum()
System.out.println("长度和: "+iSum)
扩展资料:
Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。例如,Java提供产生图形用户接口部件的类(java.awt包),这里awt是抽象窗口工具集(abstract windowing toolkit)的缩写,处理输入输出的类(java.io包)和支持网络功能的类(java.net包)。
参考资料来源:百度百科-Java
你好,很高兴回答你的问题。stream()可以调用filter方法,可以用来过滤只保留符合条件的数据,相当于是循环到不符合条件的数据时continue。
如果有帮助到你请点击采纳。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)