random() 如何与数组的索引一起使用?

how does random() work with array's index?

有人可以解释这段代码吗.. 我想知道随机数是在 1 到 6 之间吗? 或者这一步生成随机数,初始化为frequency[1+generator.nextInt(6)]++; 如果我错了,有人可以解释最后一句话..

frequency=new int[7];

public void rollIt() {
    Random generator = new Random();
    for(int i=1;i<frequency.length;i++)
        frequency[1+generator.nextInt(6)]++;
}

当以6作为参数调用nextInt method时,它将return一个介于05之间的随机数。添加 1 后,会将范围转换为 16 之间的范围。

16 之间的数字被视为数组访问表达式的数组 frequency 的索引。然后 ++ 运算符递增数组访问表达式选择的任何元素。

最后,frequency数组保存的是每次翻滚的次数,索引为翻滚的次数,元素中的数值为次数。

应该是

  Int[]frequency = new int [x];
    For (int i=0; i<frequency.length; i++){
    frequency [i] = generator.nextInt(6)+1
    }

当您为 x 实例化数组大小时,您可以询问用户数组需要多大,并将他们的答案设置为 x。这只是一个额外的东西