「Java8」stream.sorted メソッドでプリミティブ型のデータをソートする
説明
Stream<T> sorted(Comparator<? super T> comparator)
このストリームの要素を指定されたComparatorに従ってソートした結果から構成されるストリームを返します。
Javaコード
package com.arkgame.study.java8;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class ComparatorDemo {
public static String strA[] = { "U001", "Abcd", "Belowpp", "Kuuu56","this is a message" };
public static void main(String[] args) {
List<String> targetLst = Arrays.asList(strA);
// 文字列長さでソート
List<String> resLst = targetLst.stream().sorted(
(strA, strB) -> strA.length() - strB.length())
.collect(Collectors.toList());
System.out.println("実行結果");
// ソートされたリスト
for (String str : resLst) {
System.out.println(str);
}
}
}
package com.arkgame.study.java8;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class ComparatorDemo {
public static String strA[] = { "U001", "Abcd", "Belowpp", "Kuuu56","this is a message" };
public static void main(String[] args) {
List<String> targetLst = Arrays.asList(strA);
// 文字列長さでソート
List<String> resLst = targetLst.stream().sorted(
(strA, strB) -> strA.length() - strB.length())
.collect(Collectors.toList());
System.out.println("実行結果");
// ソートされたリスト
for (String str : resLst) {
System.out.println(str);
}
}
}
package com.arkgame.study.java8; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class ComparatorDemo { public static String strA[] = { "U001", "Abcd", "Belowpp", "Kuuu56","this is a message" }; public static void main(String[] args) { List<String> targetLst = Arrays.asList(strA); // 文字列長さでソート List<String> resLst = targetLst.stream().sorted( (strA, strB) -> strA.length() - strB.length()) .collect(Collectors.toList()); System.out.println("実行結果"); // ソートされたリスト for (String str : resLst) { System.out.println(str); } } }
実行結果
U001
Abcd
Kuuu56
Belowpp
this is a message