下面是我正在處理的一些代碼,我想我會讓自己成爲一個二進制計算器,讓我的生活變得輕鬆一些。但是,當我運行它時,出現錯誤,告訴我有一個Java.lang.StringIndexOutofBoundsException
。我真的不知道如何解決它,因爲據我所知,我所做的一切正確:轉換爲二進制 - 獲取IndexOutOfBoundsException
private static void ten()
{
Scanner scan = new Scanner(System.in);
System.out.println("What number would you like to convert to binary?");
System.out.print("Enter the integer here: ");
int x = scan.nextInt();
String bon = Integer.toString(x , 2);
int myArrays [ ] = new int [ 7 ];
myArrays[0] = bon.charAt(0);
myArrays[1] = bon.charAt(1);
myArrays[2] = bon.charAt(2);
myArrays[3] = bon.charAt(3);
myArrays[4] = bon.charAt(4);
myArrays[5] = bon.charAt(5);
myArrays[6] = bon.charAt(6);
myArrays[7] = bon.charAt(7);
for (int i = 0; i < myArrays.length; i++)
{
System.out.print(myArrays [ i ] + " ");
int count = 0;
count++;
if (count == 10) {
System.out.println();
count = 0;
}
}
}
您需要執行一些基本的調試:讀你的異常的堆棧跟蹤,因爲它告訴你到底是哪一行導致了問題。然後,在該行之前添加一些'System.out.println'語句*,以便您可以看到您的String和您嘗試訪問的索引。 – VGR
我在這裏有點困惑。有些人說我應該增加一個數組,另外一些人說我應該減少一個數組。我該怎麼做? – arsb48
完全擺脫陣列。 – erickson