我想计算每个数字在 Java 数组中的出现次数(例如 1=?, 2=?, 3=?)。我的数组如何存储超过 10 个值?
int [] arryNum = new int[]{4,4,4,3,4,5,4,3,4,4,4,5,4,5,5,5,4,3,2,15,4,3,4,6,4,3,4,5,4,2,4,5,4,3,2,5,4,3,5,4,0,4,3,4,5,4,3,0,4,5,4,3,5,4,2,3,2,3,4};
int[] counter = new int[] { 0, 0, 0, 0, 0,0 };
for (int i = 0; i < arryNum.length; i++) {
counter[arryNum[i] ]++;
}
for (int i = 0; i < counter.length; i++){
System.out.println((i + 1) + ":" + counter[i]);
}
最佳答案
您可以使用 Java 8 流以更简洁的方式编写它:
Map<Integer,Integer> map = new HashMap<Integer,Integer>();
Arrays.stream(arryNum).forEach(x -> map.put(x , map.computeIfAbsent(x, s -> 0) + 1));
System.out.println(map);
关于java - 计算数组java中的出现次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40533163/