随机生30个3位整数,使用匿名类实现接口Comparator完成对30 整数的降序排列。输出排序前后的结果加上注释
时间: 2024-02-29 10:51:40 浏览: 76
好的,以下是加上注释的代码实现:
```java
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class Main {
public static void main(String[] args) {
// 生成随机数列表
List<Integer> nums = new ArrayList<>();
for (int i = 0; i < 30; i++) {
// 生成3位随机整数
nums.add((int) (Math.random() * 900) + 100);
}
// 打印排序前的列表
System.out.println("排序前:" + nums);
// 使用匿名类实现Comparator接口,完成降序排列
Collections.sort(nums, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2 - o1; // 比较大小,返回o2-o1实现降序排列
}
});
// 打印排序后的列表
System.out.println("排序后:" + nums);
}
}
```
输出结果类似于:
```
排序前:[129, 293, 578, 392, 952, 574, 380, 685, 420, 244, 793, 728, 742, 317, 170, 812, 958, 367, 251, 292, 945, 275, 269, 640, 935, 559, 251, 501, 774, 333]
排序后:[958, 952, 945, 935, 812, 793, 774, 742, 728, 685, 640, 578, 574, 559, 501, 420, 392, 367, 333, 317, 293, 275, 269, 251, 251, 244, 170, 129, 80]
```
阅读全文