共用方式為


Collectors.GroupingBy 方法

定義

多載

GroupingBy(IFunction)

Collector 回在 型 T別的輸入元素上實作「群組依據」作業的 ,根據分類函式將專案分組,並在 中 Map傳回結果。

GroupingBy(IFunction, ICollector)

傳回在 CollectorT別輸入元素上實作串聯的「分組依據」作業、根據分類函式將專案分組,然後使用指定的下游 Collector,對與指定索引鍵相關聯的值執行縮減作業。

GroupingBy(IFunction, ISupplier, ICollector)

傳回在 CollectorT別輸入元素上實作串聯的「分組依據」作業、根據分類函式將專案分組,然後使用指定的下游 Collector,對與指定索引鍵相關聯的值執行縮減作業。

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對應至分類函式下相關聯索引鍵的輸入元素。

傳回之 MapList 物件的型別、可變動性、可串行化性或線程安全性沒有任何保證。

java.util.stream.Collectors.groupingBy(java.util.function.Function<? super T, ? extends K>)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於

GroupingBy(IFunction, ICollector)

傳回在 CollectorT別輸入元素上實作串聯的「分組依據」作業、根據分類函式將專案分組,然後使用指定的下游 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 作串聯群組依據作業的

屬性

備註

傳回在 CollectorT別輸入元素上實作串聯的「分組依據」作業、根據分類函式將專案分組,然後使用指定的下游 Collector,對與指定索引鍵相關聯的值執行縮減作業。

分類函式會將項目對應至某些索引鍵類型 K。 下游收集器會在 型 T 別的項目上運作,併產生 型別 D的結果。 產生的收集器會產生 Map<K, D>

傳回的類型、可變動性、可串行化性或線程安全性 Map 沒有任何保證。

例如,若要計算每個城市中人員姓氏的集合:

{@code
            Map<City, Set<String>> namesByCity
              = people.stream().collect(
                groupingBy(Person::getCity,
                           mapping(Person::getLastName,
                                   toSet())));
            }

java.util.stream.Collectors.groupingBy(java.util.function.Function<? super T, ? extends K>, java.util.stream.Collector<? super T, A, D>)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於

GroupingBy(IFunction, ISupplier, ICollector)

傳回在 CollectorT別輸入元素上實作串聯的「分組依據」作業、根據分類函式將專案分組,然後使用指定的下游 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 作串聯群組依據作業的

屬性

備註

傳回在 CollectorT別輸入元素上實作串聯的「分組依據」作業、根據分類函式將專案分組,然後使用指定的下游 Collector,對與指定索引鍵相關聯的值執行縮減作業。 Map收集器所產生的 會使用提供的 Factory 函式來建立。

分類函式會將項目對應至某些索引鍵類型 K。 下游收集器會在 型 T 別的項目上運作,併產生 型別 D的結果。 產生的收集器會產生 Map<K, D>

例如,若要計算每個城市中人員姓氏的集合,其中會排序城市名稱:

{@code
            Map<City, Set<String>> namesByCity
              = people.stream().collect(
                groupingBy(Person::getCity,
                           TreeMap::new,
                           mapping(Person::getLastName,
                                   toSet())));
            }

java.util.stream.Collectors.groupingBy(java.util.function.Function<? super T, ? extends K>, java.util.function.Supplier<M>, java.util.stream.Collector<? super T, A, D>)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於