Dans Java 8, nous organiserons la méthode de tri de List.
Java 7 and below
Revue de l'ère Java 7
List<String> nameList = Arrays.asList("Takahashi", "Tanaka", "Suzuki");
Collections.sort(nameList);
À partir de Java 8, sort (Comparator) a été ajouté à List et vous pouvez l'utiliser pour trier la liste.
nameList.sort(Comparator.comparingInt(String::length));
Trier par plusieurs conditions (longueur de la chaîne de caractères -> ordre alphabétique). Vous pouvez ajouter des conditions de tri en utilisant thenComparing ().
nameList.sort(Comparator.comparingInt(String::length)
.thenComparing(Comparator.naturalOrder()));
De plus, avec l'introduction de Stream, vous pouvez générer des listes avec Stream # trié.
List<String> sortedList = nameList.stream().sorted()
.collect(Collectors.toList());
Trier par longueur de chaîne.
List<String> sortedList = nameList.stream().sorted((s1, s2) -> s1.length() - s2.length())
.collect(Collectors.toList());
Trier par ordre alphabétique.
List<String> sortedList = nameList.stream().sorted((s1, s2) -> s1.compareTo(s2))
.collect(Collectors.toList())
Trier par longueur de chaîne.
List<String> sortedList = nameList.stream().sorted(
Comparator.comparingInt(String::length)).collect(Collectors.toList());
Trier par ordre alphabétique.
List<String> sortedList = nameList.stream().sorted(
Comparator.naturalOrder()).collect(Collectors.toList())
Longueur de la chaîne-> Trier par ordre alphabétique. Vous pouvez ajouter des conditions de tri en utilisant thenComparing ().
List<String> sortedList = nameList.stream().sorted(
Comparator.comparingInt(String::length)
.thenComparing(Comparator.naturalOrder())).collect(Collectors.toList());
List<Person> sortedList = personList.stream().sorted(new Comparator<Person>(){
@Override
public int compare(Person o1, Person o2) {
return o1.getName().compareTo(o2.getName());
}
}).collect(Collectors.toList());
Recommended Posts