//假如一个list机会中的元素要排序
List<String> list = Arrays.asList
("hello", "tom", "apple", "bbc");
Collections.sort(list, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
//o1和o2进行比较。这里输出的是按照字母顺序,a--z进行排序。
return o1.compareTo(o2);
//如果o1和o2类型是int的话,也会从小到大排序。如果从大到小倒序排的话,需要这样写。
return -o1.compareTo(o2);
}
});
list.sort(参数)这个放在在jdk1.8中有。
jdk1.8之前的list排序是:
Collections.sort(list);
jdk1.8之后可以这样排序:
list.sort(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return -o1.compareTo(o2);
}
});
还有这样的写法
Collections.sort(list, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1.compareTo(o2);
}
});
还有这样lambda
Collections.sort(list,(s1,s2)->s1.compareTo(s2));
本文深入讲解了Java中List排序的方法,包括使用Collections.sort()及List.sort(),并演示了匿名内部类和Lambda表达式的应用。从JDK1.8前后的排序方式对比,到具体实现代码示例,为读者提供了全面的排序操作指南。
排序&spm=1001.2101.3001.5002&articleId=84142706&d=1&t=3&u=ba996d54ca104fc3a627dea6811632a2)
3791

被折叠的 条评论
为什么被折叠?



