代码:
@Test
public void Test(){
List<Integer> list = new Ar;rayList<>();
list.add(90);
list.add(9);
list.add(100);
list.add(99);
list.add(30);
list.add(70);
list.add(7);
list.add(1);
list.add(6);
list.add(10);
List<Integer> collect = list.stream().sorted(Comparator.comparing(Integer::intValue)).collect(Collectors.toList());
System.out.println("使用stream流进行正序排序第一种方式排序结果为:");
collect.forEach(c->{
System.out.println(c);
});
List<Integer> collect1 = list.stream().sorted(Integer::compareTo).collect(Collectors.toList());
System.out.println("使用stream流进行正序排序第二种方式排序结果为:");
collect1.forEach(c->{
System.out.println(c);
});
List<Integer> collect2 = list.stream().sorted(Comparator.comparing(Integer::intValue).reversed()).collect(Collectors.toList());
System.out.println("使用stream流进行倒序排序结果为:");
collect2.forEach(c->{
System.out.println(c);
});
List<Integer> collect3 = list.stream().sorted(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1.compareTo(o2);
}
}).collect(Collectors.toList());
System.out.println("使用lambda表达式对集合进行正序排序结果为:");
collect3.forEach(c->{
System.out.println(c);
});
List<Integer> collect4 = list.stream().sorted(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2.compareTo(o1);
}
}).collect(Collectors.toList());
System.out.println("使用lambda表达式对集合进行倒序排序结果为:");
collect4.forEach(c->{
System.out.println(c);
});
}
执行结果: