索引5超出了Simple_Inversions.main(Simple_Inversions.java:24)的长度界限
-我的程序的主要功能是计算数组的反转数。 示例:索引5超出了Simple_Inversions.main(Simple_Inversions.java:24)的长度界限,java,loops,inversion,Java,Loops,Inversion,-我的程序的主要功能是计算数组的反转数。 示例: 输入:5 0 1 2 3 4(第一个输入是数组的长度) 输出:0(因为所有数字顺序正确) 输入:543210 产出:4 输入:501243 产出:1 -代码的第一部分是定义数组的长度并用数字填充数组。 我觉得我做的每件事都是对的,但我不明白为什么会出现以下错误: 线程“main”java.lang.ArrayIndexOutOfBoundsException中的异常:索引5超出长度5的界限 在Simple\u Inversions.main(Si
import java.util.Scanner;
公共类简单逆{
公共静态void main(字符串[]args){
扫描仪sc=新的扫描仪(System.in);
整数指数;
国际安扎尔;
int[]费尔德;
内翻;
anzahl=sc.nextInt();
费尔德=新国际[anzahl];
指数=0;
而(指数 if(feld[index+1]如果(feld[index+1]将index
更改为index+1
,则在时失败。
import java.util.Scanner;
public class Simple_Inversions {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int index;
int anzahl;
int[] feld;
int inversionen;
anzahl = sc.nextInt();
feld = new int[anzahl];
index = 0;
while ( index < anzahl )
{
feld[index] = sc.nextInt();
index = index + 1;
}
inversionen=0;
index=0;
while(index < feld.length){
if(feld[index+1]<feld[index]) {
inversionen = inversionen + 1;
}
index=index+1;
}
System.out.println(inversionen);
}
}