Stream 流 一行代码 将List 集合 中的 元素去重, 将2个List 集合 合并

集合变Stream流一行代码可以做很多事情;

I 可以做过滤

.filter(λ表达式)  λ表达式是要return一个 Boolean 的判断,做过滤

II可以做裁剪 断尾留头

.limit(number)

III可以做跳跃  斩头留尾

skip(number)

IV 去重

.distinct()

List<String> distinctList = Stream.of(listA).flatMap(Collection::stream).distinct().collect(Collectors.toList());

两个List集合 合并 

其实是用两个Stream 流合并

List<String> collect = Stream.of(listA, listB).flatMap(Collection::stream).distinct().collect(Collectors.toList());


最后

@一个流只能用一次,

@流里面的操作改的只是流里面的数据,原来的数据源没有改变;

原文地址:https://www.cnblogs.com/cjd01/p/14088193.html