创建列表,使用 Lambda 表达式进行排序:java List list = Arrays.asList(5, 2, 7, 3, 8, 1, 6, 4);list.sort((a, b) -> a.compareTo(b));System.out.println(list);输出结果为:[1, 2, 3, 4, 5, 6, 7, 8]降序排序:同样使用 Lambda 表达式,改变排序方式为降序:java List...
Java lambda 实现排序
使用 Java Lambda 表达式实现排序,简化代码并提升效率。以下是不同排序方式的示例:
升序排序:
创建列表,使用 Lambda 表达式进行排序:
java
List list = Arrays.asList(5, 2, 7, 3, 8, 1, 6, 4);
list.sort((a, b) -> a.compareTo(b));
System.out.println(list);
输出结果为:[1, 2, 3, 4, 5, 6, 7, 8]
降序排序:
同样使用 Lambda 表达式,改变排序方式为降序:
java
List list = Arrays.asList(5, 2, 7, 3, 8, 1, 6, 4);
list.sort((a, b) -> b.compareTo(a));
System.out.println(list);
输出结果为:[8, 7, 6, 5, 4, 3, 2, 1]
静态方法引用排序:
利用静态方法引用简化排序:
java
List list = Arrays.asList("apple", "banana", "orange", "grape", "kiwi");
list.sort(String::compareTo);
System.out.println(list);
输出结果为:[apple, banana, grape, kiwi, orange]
自定义比较器排序:
通过自定义比较器实现复杂排序,如年龄排序:
java
List list = Arrays.asList(
new Person("Bob", 28),
new Person("Alice", 23),
new Person("Charlie", 32),
new Person("David", 22)
);
list.sort((a, b) -> a.getAge() - b.getAge());
System.out.println(list);
输出结果为:[Person{name='David', age=22}, Person{name='Alice', age=23}, Person{name='Bob', age=28}, Person{name='Charlie', age=32}]
其中 Person 类包含姓名和年龄属性,自定义比较器按年龄升序排序。2024-11-18