JDK8-Java Streams 收集器

Posted 登高一呼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDK8-Java Streams 收集器相关的知识,希望对你有一定的参考价值。

Collectors 类包含许多常见聚合操作的因素,比如累加到集合中、字符串串联、缩减和其他汇总计算,以及创建汇总表(通过groupingBy())。

内置收集器
收集器行为
toList() 将元素收集到一个 List 中。
toSet() 将元素收集到一个 Set 中。
toCollection(Supplier<Collection>) 将元素收集到一个特定类型的 Collection 中。
toMap(Function<T, K>, Function<T, V>) 将元素收集到一个 Map 中,依据提供的映射函数将元素转换为键值。
summingInt(ToIntFunction<T>) 计算将提供的 int 值映射函数应用于每个元素(以及 long 和 double 版本)的结果的总和。
summarizingInt(ToIntFunction<T>) 计算将提供的 int 值映射函数应用于每个元素(以及 long 和 double 版本)的结果的summinmaxcount 和 average
reducing() 向元素应用缩减(通常用作下游收集器,比如用于 groupingBy)(各种版本)。
partitioningBy(Predicate<T>) 将元素分为两组:为其保留了提供的预期的组和未保留预期的组。
partitioningBy(Predicate<T>, Collector) 将元素分区,使用指定的下游收集器处理每个分区。
groupingBy(Function<T,U>) 将元素分组到一个 Map 中,其中的键是所提供的应用于流元素的函数,值是共享该键的元素列表。
groupingBy(Function<T,U>, Collector) 将元素分组,使用指定的下游收集器来处理与每个组有关联的值。
minBy(BinaryOperator<T>) 计算元素的最小值(与 maxBy() 相同)。
mapping(Function<T,U>, Collector) 将提供的映射函数应用于每个元素,并使用指定的下游收集器(通常用作下游收集器本身,比如用于 groupingBy)进行处理。
joining() 假设元素为 String 类型,将这些元素联结到一个字符串中(或许使用分隔符、前缀和后缀)。
counting() 计算元素数量。(通常用作下游收集器。)

 

以上是关于JDK8-Java Streams 收集器的主要内容,如果未能解决你的问题,请参考以下文章

Microsoft SQL Server 代码片段收集

精心收集的 48 个 JavaScript 代码片段,仅需 30 秒就可理解

精心收集的 48 个 JavaScript 代码片段,仅需 30 秒就可理解!(转载)

常用Javascript代码片段集锦

java Streams API介绍

Java 8 Streams:根据不同的属性多次映射同一个对象