ステッチング機能Collectors.joining
オーバーロードされたメソッドの種類// 3
Collectors.joining()
Collectors.joining( "スプライスシンボル")
Collectors.joining( "モザイク文字"、 "接頭辞"、 "接尾辞")
文字列結果= Stream.of( "springboot"、 "MySQLの"、 "HTML5"、 "CSS3")を収集(Collectors.joining( ""、 "["、 "]"))。
グループ機能Collectors.groupingBy
地図<文字列、リスト<学生>> listMap = students.stream()コレクト(Collectors.groupingBy(OBJ - > obj.getProvince()));
キー:グループフィールド
値:グループ化の結果
listMap.forEach((キー、値) - > {
System.out.println( "========");
System.out.println(キー);
value.forEach(OBJ - > {
System.out.println(obj.getAge())。
});
});
統計パケット:⾏へのクエリ統計集計関数は、パケットは、数を数えます
()Collectors.counting構成要素の数を数えます
ケース:州は州の数の統計に応じてグループ分け
地図<文字列、ロング> listMap = students.stream()コレクト(Collectors.groupingBy(学生:: getProvince、Collectors.counting()));
listMap.forEach((キー、値) - > {するSystem.out.println(キー+ "省⼈数有" +値);});
キー:グループフィールド
値:統計の数
統計の収集:
IntSummaryStatistics summaryStatistics = students.stream()コレクト(Collectors.summarizingInt(学生:: getAge))。
System.out.println( "平均" + summaryStatistics.getAverage())。
System.out.println( "⼈数:" + summaryStatistics.getCount());
System.out.println( "最大値:" + summaryStatistics.getMax())。
System.out.println( "の最小値:" + summaryStatistics.getMin())。
System.out.println( "总和:" + summaryStatistics.getSum());