Collectors.GroupingBy 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
GroupingBy(IFunction) |
返回 |
GroupingBy(IFunction, ICollector) |
返回对 |
GroupingBy(IFunction, ISupplier, ICollector) |
返回对 |
GroupingBy(IFunction)
返回 Collector
对类型 T
输入元素的“分组依据”操作的实现,根据分类函数对元素进行分组,并在一个 Map
中返回结果。
[Android.Runtime.Register("groupingBy", "(Ljava/util/function/Function;)Ljava/util/stream/Collector;", "", ApiSince=24)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T", "K" })]
public static Java.Util.Streams.ICollector? GroupingBy (Java.Util.Functions.IFunction? classifier);
[<Android.Runtime.Register("groupingBy", "(Ljava/util/function/Function;)Ljava/util/stream/Collector;", "", ApiSince=24)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T", "K" })>]
static member GroupingBy : Java.Util.Functions.IFunction -> Java.Util.Streams.ICollector
参数
- classifier
- IFunction
分类器函数将输入元素映射到键
返回
实现 Collector
分组依据操作
- 属性
注解
返回 Collector
对类型 T
输入元素的“分组依据”操作的实现,根据分类函数对元素进行分组,并在一个 Map
中返回结果。
分类函数将元素映射到某些键类型 K
。 收集器生成一个 Map<K, List<T>>
键,其键是将分类函数应用于输入元素所产生的值,其相应的值包含 List
映射到分类函数下关联键的输入元素。
无法保证返回的 Map
或对象的类型、可变性、可序列化性或 List
线程安全性。
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。
适用于
GroupingBy(IFunction, ICollector)
返回对 Collector
类型 T
输入元素的级联“分组依据”运算,根据分类函数对元素进行分组,然后使用指定的下游 Collector
对与给定键关联的值执行缩减操作。
[Android.Runtime.Register("groupingBy", "(Ljava/util/function/Function;Ljava/util/stream/Collector;)Ljava/util/stream/Collector;", "", ApiSince=24)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T", "K", "A", "D" })]
public static Java.Util.Streams.ICollector? GroupingBy (Java.Util.Functions.IFunction? classifier, Java.Util.Streams.ICollector? downstream);
[<Android.Runtime.Register("groupingBy", "(Ljava/util/function/Function;Ljava/util/stream/Collector;)Ljava/util/stream/Collector;", "", ApiSince=24)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T", "K", "A", "D" })>]
static member GroupingBy : Java.Util.Functions.IFunction * Java.Util.Streams.ICollector -> Java.Util.Streams.ICollector
参数
- classifier
- IFunction
分类器函数将输入元素映射到键
- downstream
- ICollector
Collector
实现下游缩减
返回
实现 Collector
级联分组操作
- 属性
注解
返回对 Collector
类型 T
输入元素的级联“分组依据”运算,根据分类函数对元素进行分组,然后使用指定的下游 Collector
对与给定键关联的值执行缩减操作。
分类函数将元素映射到某些键类型 K
。 下游收集器对类型的 T
元素进行操作,并生成类型 D
的结果。 生成的收集器生成一个 Map<K, D>
。
无法保证返回的类型 Map
、可变性、可序列化性或线程安全性。
例如,若要计算每个城市中人员的姓氏集:
{@code
Map<City, Set<String>> namesByCity
= people.stream().collect(
groupingBy(Person::getCity,
mapping(Person::getLastName,
toSet())));
}
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。
适用于
GroupingBy(IFunction, ISupplier, ICollector)
返回对 Collector
类型 T
输入元素的级联“分组依据”运算,根据分类函数对元素进行分组,然后使用指定的下游 Collector
对与给定键关联的值执行缩减操作。
[Android.Runtime.Register("groupingBy", "(Ljava/util/function/Function;Ljava/util/function/Supplier;Ljava/util/stream/Collector;)Ljava/util/stream/Collector;", "", ApiSince=24)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T", "K", "D", "A", "M extends java.util.Map<K, D>" })]
public static Java.Util.Streams.ICollector? GroupingBy (Java.Util.Functions.IFunction? classifier, Java.Util.Functions.ISupplier? mapFactory, Java.Util.Streams.ICollector? downstream);
[<Android.Runtime.Register("groupingBy", "(Ljava/util/function/Function;Ljava/util/function/Supplier;Ljava/util/stream/Collector;)Ljava/util/stream/Collector;", "", ApiSince=24)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T", "K", "D", "A", "M extends java.util.Map<K, D>" })>]
static member GroupingBy : Java.Util.Functions.IFunction * Java.Util.Functions.ISupplier * Java.Util.Streams.ICollector -> Java.Util.Streams.ICollector
参数
- classifier
- IFunction
分类器函数将输入元素映射到键
- mapFactory
- ISupplier
提供新空 Map
的供应商,将插入结果
- downstream
- ICollector
Collector
实现下游缩减
返回
实现 Collector
级联分组操作
- 属性
注解
返回对 Collector
类型 T
输入元素的级联“分组依据”运算,根据分类函数对元素进行分组,然后使用指定的下游 Collector
对与给定键关联的值执行缩减操作。 Map
收集器生成的函数是使用提供的工厂函数创建的。
分类函数将元素映射到某些键类型 K
。 下游收集器对类型的 T
元素进行操作,并生成类型 D
的结果。 生成的收集器生成一个 Map<K, D>
。
例如,若要计算每个城市中人员的姓氏集,其中对城市名称进行排序:
{@code
Map<City, Set<String>> namesByCity
= people.stream().collect(
groupingBy(Person::getCity,
TreeMap::new,
mapping(Person::getLastName,
toSet())));
}
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。