java如果生成了随机数,如何提高计数器的值?
基本上,我有一个50个随机数的数组,如果我得到相同的随机数,我想增加计数。在所有这些计数之后,我想看看我多久得到一次哪个数字,但我的计数方法似乎有一个错误。所以它基本上给了我,例如,比随机生成的数字中更多的零
这是我的程序代码:
import java.util.Random;
public class aufgabe2 {
static int[] ran = new int[50];
static int[] counter = new int[10];
static Random r = new Random();
public static void ranNums() {
for (int i = 0; i < ran.length; i++) {
ran[i] = r.nextInt(10);
System.out.print(ran[i] + " ");
}
}
public static void countSameRanNums(int[] counter) {
System.out.println();
for (int i = 0; i < 9; i++) {
counter[ran[i]]++;
System.out.println(i + ".frequency: " + (counter[ran[i]]));
}
}
public static void main(String[] args) {
ranNums();
countSameRanNums(ran);
}
}
# 1 楼答案
您遇到的问题是,您只迭代ran数组的前9个位置,即50个位置
此外,我认为不需要两种方法来获得每个随机数的计数。您可以在获得随机值的同时对其进行计数。看看这个:
在你只需要做一个循环就可以得到所有的计数:
# 2 楼答案
如果您需要以上任何解释,请告诉我