Collectors.groupingBy是Java 8中的一个收集器,用于将流中的元素按照指定规则进行分组,并将分组后的结果放入一个Map中返回。具体来说,groupingBy接收一个Function<T, K>类型的参数,该参数用于指定分组规则,其中T表示流中的元素类型,K表示分组后的键类型。例如,假设存在一个List类型的集合,我们可以使用以下代码将其按照年龄进行分组:

Map<Integer, List<Person>> groupByAge = persons.stream()
    .collect(Collectors.groupingBy(Person::getAge));

其中,Person::getAge表示获取Person对象的年龄作为分组规则。执行上述代码后,将会得到一个Map<Integer, List>类型的结果,其中键为年龄,值为对应年龄的Person列表。

Java Collectors.groupingBy详解:分组操作的利器

原文地址: https://www.cveoy.top/t/topic/na5i 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录