Stream Collectors - filtering
public static <T,A,R> Collector<T,?,R> filtering(Predicate<? super T> predicate, Collector<? super T,A,R> downstream)
简单理解该方法的作用就是先对元素进行给定条件(第一个参数)的过滤,过滤后再对结果集进行转换(第二个参数)。
示例:
void test21() {
List<Integer> list = List.of(2,5,8,9,4,20,11,43,55);
List filterList = list.stream().collect(Collectors.filtering(a -> a>20, Collectors.toList()));
filterList.stream().forEach(System.out::println);
}
根据官网介绍,该方法一般配合groupingBy和partitioningBy去使用,官网示例:
Map<Department, Set<Employee>> wellPaidEmployeesByDepartment = employees.stream().collect(
groupingBy(Employee::getDepartment, filtering(e -> e.getSalary() > 2000, toSet())));
以上代码简单理解,先使用groupingBy第一参数计算结果对元素进行分组,第一参数结果数据作为Map中的key,然后对分组结果进行filtering操作,filtering第一个参数是过滤条件,第二参数把过滤后结果数据保存的在Set中
最后把这个Set作为value保存在上面Map中。
Stream Collectors - filtering相关推荐
- java8 group by_java8新特性Java 8 – Stream Collectors groupingBy 示例 - Java教程
在这篇教程中,将向你展示如何使用Java 8 Stream的Collectors,来对一个List进行分组,计算个数,求和以及排序. 1. Group By, Count and Sort 1.1 对 ...
- java 流计算_Java 流收集器 ( Stream Collectors ) ( 一 ) - 统计计算
首先需要声明的是,我的开发语言是 PHP,但我对所有语言都懂一点点,然后很多文章,都是看到某个知识点就想写些什么 刚刚再浏览某些文章的时候看到 Java 的流收集器 ( Stream Collecto ...
- java8 stream collectors.joining
java8 stream collectors.joining 为承接另一篇关于Stream介绍的文章,本文将详细讲讲Java 8流(stream)收集器(Collectors)中的joining() ...
- 【苹果iMessage推送家庭推】苹果位置推导入Java入口java.util.stream.collectors; tmpmaclist
推荐内容IMESSGAE相关 作者✈️@IMEAE推荐内容 iMessage苹果推软件 *** 点击即可查看作者要求内容信息 作者✈️@IMEAE推荐内容 1.家庭推内容 *** 点击即可查看作者要求 ...
- Java8 Stream Collectors groupingBy使用
分组List并显示其总数. @Test public void test8() {//3 apple, 2 banana, others 1List<String> items =Arra ...
- Java Stream Collectors.groupingBy()实现分组(单字段分组,多字段分组)
1 User实体类 public class User {private Long userId;/*** 用户名(登录)*/private String username;/*** 年龄*/priv ...
- java stream Collectors
实现了Interface Collector提供了存放元素的容易 Collectors.toList() Collectors.toSet() Collectors.toMap Collectors. ...
- Stream Collectors - joining
public static Collector<CharSequence,?,String> joining() 简单地说就是把元素连接起来,看一个例子: void test25() ...
- Java 9 揭秘(18. Streams API 更新)
Tips 做一个终身学习的人. 在本章中,主要介绍以下内容: 在Stream接口中添加了更加便利的方法来处理流 在Collectors类中添加了新的收集器(collectors) JDK 9中,在St ...
- Stream流与Lambda表达式(三) 静态工厂类Collectors
/*** @author 陈杨*/@SpringBootTest @RunWith(SpringRunner.class) public class CollectorsDetail {private ...
最新文章
- 并发编程-26 高并发处理手段之服务降级与服务熔断 + 数据库切库分库分表
- 聊聊Java的泛型及实现
- Python 提取数据库(Postgresql)并邮件发送
- python 进程和线程
- adb native raact 夜神_React-Native安装及环境搭建(夜神模拟机运行)
- “类云”的存储服务什么样?Pure Storage发布Pure Fusion等系列新品
- python多进程运行死机_python多进程假死
- Spring(三)Bean继续入门
- 计算机二级C++知识点归纳之公共基础
- 雅虎新频道Buzz截图,Digg竞争者?
- C语言——深度剖析数据在内存中的存储
- EventBus实现原理
- 游戏图片文件和声音文件的隐藏
- 家居装修知识 装修注意事项需牢记
- 系统中的DTO与MO
- gta4 oracle_GTA4车辆与现实车辆名字对照
- Android 10 去掉系统默认谷歌输入法
- nyoj 1036非洲小孩
- 【博客465】BGP(边界网关协议)-----BGP路由黑洞及路由反射器与联盟
- 你要去做一个大人,不要回头,不要难过