Java中使用Lambda写法,按照字符串长短进行排序
时间: 2024-11-30 18:20:59 浏览: 28
在Java中,你可以使用Lambda表达式配合`Comparator`接口来按字符串长度进行升序或降序排序。这里是一个例子,假设有一个字符串列表需要根据长度进行排序:
```java
import java.util.Arrays;
import java.util.Comparator;
List<String> stringList = Arrays.asList("short", "longest", "medium");
// 使用 Lambda 表达式按字符串长度升序排序
Collections.sort(stringList, (a, b) -> a.length() - b.length());
System.out.println(stringList); // 输出:[short, medium, longest]
// 如果你想按降序排列,只需改变比较顺序:
Collections.sort(stringList, (a, b) -> b.length() - a.length());
System.out.println(stringList); // 输出:[longest, medium, short]
```
这里,`(a, b) -> a.length() - b.length()`就是一个Lambda表达式,它表示接受两个String参数并返回它们长度差的比较规则。如果长度相等,则默认保持自然顺序。
阅读全文