1.匿名内部类写法:
import java.util.*;
public class Test {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(3);
numbers.add(1);
numbers.add(4);
numbers.add(1);
numbers.add(5);
numbers.add(9);
numbers.add(2);
numbers.add(6);
numbers.add(5);
numbers.add(3);
// 使用Collections.sort()方法和Comparator接口进行从大到小排序
Collections.sort(numbers, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2.compareTo(o1);
}
});
// 输出排序后的列表
for (Integer number : numbers) {
System.out.println(number);
}
}
}
2.lambda表达式写法(简化匿名内部类):
import java.util.*;
public class Test {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(3);
numbers.add(1);
numbers.add(4);
numbers.add(1);
numbers.add(5);
numbers.add(9);
numbers.add(2);
numbers.add(6);
numbers.add(5);
numbers.add(3);
Collections.sort(numbers, (a,b)->b.compareTo(a));
for (Integer number : numbers) {
System.out.println(number);
}
}
}