Java 为什么这里有数组越界异常?
您正在执行array[rear],在本例中,rear是数组大小的==并且不是有效索引。数组的大小从0变为-1Java 为什么这里有数组越界异常?,java,arrays,Java,Arrays,您正在执行array[rear],在本例中,rear是数组大小的==并且不是有效索引。数组的大小从0变为-1 int m; Scanner obj=new Scanner(System.in); System.out.println("limit of array start from 0"); m=obj.nextInt(); int[] array=new int[m]; int[] pro=new int[m]; int front=0; int rear=m; System.out
int m;
Scanner obj=new Scanner(System.in);
System.out.println("limit of array start from 0");
m=obj.nextInt();
int[] array=new int[m];
int[] pro=new int[m];
int front=0;
int rear=m;
System.out.println("Array element entry");
for(int i=0;i<array.length;i++)
array[i]=obj.nextInt();
System.out.println("size"+array.length);
array[front]=array[front]+array[rear];
for(int j=0;j<pro.length;j++)
System.out.println(" the array"+array[j]);
试试这个。这个
int rear = m - 1;
应该是
int rear = m;
因为Java数组从0开始,并且尝试访问array.length的元素总是超出范围
此外,您还可以使用打印阵列
int rear = m - 1;
请格式化。语法错误。请更正问题。您可以使用花括号来格式化您的循环,因为它没有背景。
System.out.println(Arrays.toString(array));