问题描述
我正在为学校作业而苦苦挣扎,部分作业要求我将一个空数组插入方法中,然后将其内部带有随机值返回,然后在main方法中打印该数组。我得到的错误是ArrayIndexOutOfBoundsException,我想到了在该方法中使用try catch的方法,但是它不起作用。
int[] genarator(int[] arr){
int maxValues=10;
int pointer=0;
Random r=new Random(); //I am not sure the
if(arr[maxValues] !=0) {
return arr;
}
for(int i=0;i<maxValues;i++) {
arr[pointer] = r.nextInt((10 - 0) + 1);
pointer++;
}
return arr;
}
解决方法
`arr[maxValues]`
您说您必须传递一个空数组
发生错误是因为您尝试获取不存在的空数组的第10个元素
在arr = new int[maxValues];
行之前尝试if(arr[maxValues] !=0)