我需要通过用“* ”替换这些数字来找出这些数字在数组中出现的次数,但它给出了太多的星星。 有谁有建议可以帮助我解决这个问题。 这就是我所拥有的
public class Frequency {
public static void main(String[] args) {
int[] rateFrequency = { 0, 1, 2, 2, 2, 3, 3 };
for (int i = 0; i <= 4; i++) {
System.out.println(i + ":");
for (int j = 0; j <= rateFrequency.length; j++) {
System.out.print(" * ");
}
}
}
}
最佳答案
也许你可以使用 Collections.Frequency() 方法:
Integer[] rateFrequency = { 0, 1, 2, 2, 2, 3, 3 };
List<Integer> list = Arrays.asList(rateFrequency);
for(int i=0; i<=4; i++){
System.out.println(i+":" + Collections.frequency(list,i));
}
输出:
0:1
1:1
2:3
3:2
4:0
您可以通过创建另一个循环来修改它以打印“*”。
关于java - 如何获得给定数组的频率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50028857/