このクラスのコードをクラスプロジェクト用に記述しましたが、2つの問題があります。Java 8e:ロジックエラーと配列インデックスが範囲外になっています。プログラム内の例外
- ラン、ディスプレイは、ArrayIndexOutOfBoundsExceptionがある場合:10
- ラン(以下に詳述)は現在、私は例外、または論理エラーのいずれかを識別できない場合、プログラムが正常に機能しません。
2つが関連している可能性があります。ヘルプは謙虚に要求されています:)
プログラムは10個の入力値を取る必要があります。これらの値は配列に格納する必要があり、配列の値は3つの別々の列として出力され、行の数は最長配列の長さによって制限されます。現在、入力値が10 9 8 7 6 5 4 -3 -2 -1
の場合、出力は1行で、-2 -1 -1
となります。
import java.util.Scanner;
public class APComSci9p1 {//Start program
public static void main(String[] args) {//Start Main
//Initilize inputs
Scanner scnKey = new Scanner(System.in);
//Initialize Arrays
int[] aOriginValues,
aEvenList,
aOddList,
aNegitiveList;
aOriginValues = new int[10];
aEvenList = new int[10];
aOddList = new int[10];
aNegitiveList = new int[10];
//Initialize Array index Variables
int iInput;
int iListControlE = 0;
int iListControlO = 0;
int iListControlN = 0;
//Start Loop
for (iInput = 0; iInput <= 9; iInput++){
System.out.print("Input value: ");
aOriginValues[iInput] = scnKey.nextInt();
//Start if/else
if ((aOriginValues[iInput] % 2) == 0){
aEvenList[iListControlE] = aOriginValues[iInput];
}else {
aOddList[iListControlO] = aOriginValues[iInput];
}//end if/Else
if (aOriginValues[iInput] < 0){
aNegitiveList[iListControlN] = aOriginValues[iInput];
}//end if
}//End loop
//Initialize Loop Specific variables
int iLimit;
//Start if/else #2
if((aEvenList.length >= aOddList.length) && (aEvenList.length >= aNegitiveList.length)){
iLimit = aEvenList.length;
}else if((aOddList.length >= aEvenList.length) && (aOddList.length >= aNegitiveList.length)){
iLimit = aOddList.length;
}else{
iLimit = aNegitiveList.length;
}//End if/else #2
System.out.println(" Even Odd Negitive ");
for (int iControl = 0; iControl <= iLimit; iControl ++){
System.out.printf("%,12d%,11d%,12d%n", aEvenList[iControl], aOddList[iControl], aNegitiveList[iControl]);
}
}//End Main
}//End program
例外のスタックトレースは、発生する行番号も示します。このインデックスを持たない配列のインデックス10にアクセスしようとしています。 – Henry
私はエラーが何を言っているのかを知っている、私はちょうど起こっている場所を見つけることができません。私(私が知っているバイアスされた情報源)私は10の値を持つ配列で10のインデックスを参照している私は分かりません。 – ShiftGuazz