【发布时间】:2021-06-05 23:07:11
【问题描述】:
我一直在尝试编写一种方法,该方法在调用时会生成一个随机长度的数组,并为每个值分配随机数。出于某种原因,我在 for 循环中遇到了越界异常。
public static int[] randArray()
{
int[] myRandArray = new int[0];
for (int i = 0; i <= (int)((Math.random() * 99) + 1); i++ ) {
myRandArray[i] = (int)((Math.random() * 99) + 1);
}
return myRandArray;
}
我是 Java 的新手,这可能是一个愚蠢的问题,但无论如何谢谢。
【问题讨论】:
-
您创建了一个零长度数组。当您调用
new int[SIZE]时,您应该输入一个输入(例如方法参数)来确定数组的大小。如果您不想通过传递的值指定它,则使用数组初始化中的 rng(创建大于 0 的内容),然后像往常一样使用myRandArray.length。