使用Comparator.comparing按照动物年龄升序/降序排序
public class Demo {
public static void main(String[] args) {
ArrayList listAnimals = new ArrayList<>();
listAnimals.add(new Animal().setName("狗").setAge(2));
listAnimals.add(new Animal().setName("猫").setAge(3));
listAnimals.add(new Animal().setName("老鼠").setAge(1));
listAnimals.sort(Comparator.comparing(Animal::getAge));
listAnimals.forEach(System.out::println);
// 降序排序
// listAnimals.sort(Comparator.comparing(Animal::getAge).reversed());
}
}
2. 对数字排序
public class Demo {
public static void main(String[] args) {
List listIntegers = Arrays.asList(3, 1, 2);
listIntegers.sort((k, v) -> k.compareTo(v.intValue()));
listIntegers.forEach(System.out::println);
// 降序排序
// listIntegers.sort((k,v)->v.compareTo(k.intValue()));
// listIntegers.forEach(System.out::println);
}
}
3. 对字符串排序
public class Demo {
public static void main(String[] args) {
List listStrings = Arrays.asList("abandon","dog","cat","banana");
listStrings.sort(String::compareTo);
System.out.println(listStrings); // 控制台打印 [abandon, banana, cat, dog]
// 降序排序
Collections.reverse(listStrings);
System.out.println(listStrings); // 控制台打印 [dog, cat, banana, abandon]
}
}



