';java.lang.ArrayIndexOutOfBoundsException:长度为10'的索引10超出范围;错误
上面的代码用于在数组中插入元素。我试着改变了头发的长度 将数组设置为9,但问题仍然存在';java.lang.ArrayIndexOutOfBoundsException:长度为10'的索引10超出范围;错误,java,arrays,Java,Arrays,上面的代码用于在数组中插入元素。我试着改变了头发的长度 将数组设置为9,但问题仍然存在 public class Array1 { public static int[] insertX (int n,int x,int pos,int arr[]) { int newarr[] = new int[n+1]; for(int i=0; i<i+1;i++) { if(i < pos -1
public class Array1 {
public static int[] insertX (int n,int x,int pos,int arr[]) {
int newarr[] = new int[n+1];
for(int i=0; i<i+1;i++) {
if(i < pos -1) {
newarr[i]=arr[i];
}
else if(i==pos-1) {
newarr[i]=x;
}
else
{
newarr[i]= arr[i-1];
}
}
return newarr;
}
public static void main(String[] args) {
int n=10;
int arr[] = {1,2,3,4,5,6,7,8,9,10};
System.out.println("Initial array"+ " " + Arrays.toString(arr));
int x=50;
int pos =5;
arr = insertX(n,x,pos,arr);
System.out.println("Array with inserted number"+ " " + Arrays.toString(arr));
}
}
公共类数组1{
公共静态int[]插入x(int n,int x,int pos,int arr[]){
int newarr[]=新int[n+1];
对于(int i=0;i您需要更改循环结束条件:
for(int i=0; i<newarr.length;i++)
for(int i=0;ii实际上,如果不是因为抛出的异常,循环将在i
达到最大int
值时停止。它可能会说i
或诸如此类。明白了。将根据您的答案进行更改。