统计100个0-20之间随机数产生的次数,并按照次数降序输出,使用java
时间: 2024-11-25 17:21:26 浏览: 36
Java生产1-100的随机数简单实例(分享)
在Java中,你可以使用`java.util.HashMap`来统计每个数字出现的次数,然后利用`TreeMap`或自定义排序逻辑将它们按降序排列。以下是一个简单的示例:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
// 生成100个0-20之间的随机数
Random random = new Random();
int[] numbers = new int[100];
for (int i = 0; i < 100; i++) {
numbers[i] = random.nextInt(21); // 生成0-20的随机数(包括20)
}
// 使用HashMap存储每个数字及其频率
Map<Integer, Integer> frequencyMap = new HashMap<>();
for (int num : numbers) {
frequencyMap.put(num, frequencyMap.getOrDefault(num, 0) + 1);
}
// 转换为List并按值降序排序
List<Map.Entry<Integer, Integer>> sortedEntries = new ArrayList<>(frequencyMap.entrySet());
Collections.sort(sortedEntries, (a, b) -> b.getValue().compareTo(a.getValue()));
// 输出结果
for (Map.Entry<Integer, Integer> entry : sortedEntries) {
System.out.println("数字 " + entry.getKey() + " 出现了 " + entry.getValue() + " 次");
}
}
}
```
阅读全文