-4

私はプログラミングはまったく初めてで、Java が私の最初の言語になります。私はすべてのコーディングにもEclipseを使用しています。

私は配列を理解しようとして配列を調べてきました。このサイトを見つけました: http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html

最初のコード例の独自のバリエーションを作成しました。

package testArray;

public class TestArray
{
  public static void main(String[] args)
  {
     // Declare a new array of integers
     int[] anArray;

     // Sets the array length to 5
     anArray = new int[5];

     // Setting each array element
     anArray[0] = 1;
     anArray[1] = 2;
     anArray[2] = 3;
     anArray[3] = 4;
     anArray[5] = 5;

     // Displaying the value of each array element
     System.out.println("Element at index 0: " + anArray[0]);
     System.out.println("Element at index 0: " + anArray[1]);
     System.out.println("Element at index 0: " + anArray[2]);
     System.out.println("Element at index 0: " + anArray[3]);
     System.out.println("Element at index 0: " + anArray[4]);

  }
}

コンソールに次のエラーが表示され続けます。

スレッド「メイン」での例外 java.lang.ArrayIndexOutOfBoundsException: 5 at testArray.TestArray.main(TestArray.java:15)

サイトのコードも使用してみましたが、同じエラーが発生します。日食で何かがセットアップされていませんか?

どんな助けでも大歓迎です!

注: 初心者のプログラマーにとって役立つサイトを誰かが持っている場合は、投稿に追加してください!

4

4 に答える 4

4

問題は次のとおりです。

 anArray[5] = 5;

これを次のように置き換えます。

 anArray[4] = 5;

サイズ 5 の配列を定義したため、0 ~ 4 のインデックスのみを使用できます。

 anArray = new int[5];

4 を超えるインデックスにアクセスしようとすると、ArrayIndexOutOfBoundException が発生します。

于 2013-08-16T01:21:51.343 に答える
2
anArray[5] = 5;

配列は0ベースであるため、実際には存在しない6番目の要素にアクセスします。new int[5]0、1、2、3、および 4 の番号が付けられた 5 つの要素が含まれています。

すべてのインデックスは配列の長さより小さくなければなりません。anArray[4] = 5;代わりに使用してください。

于 2013-08-16T01:22:42.657 に答える
0

Java の配列は 0 ベースで、サイズ 5 の配列を作成しました。

anArray[5] = 5; 配列の範囲外ですが、単なるタイプミスのようです。

あなたはおそらく置くつもりでした

anArray[4] = 5;

于 2013-08-16T01:28:46.693 に答える
0

多分あなたがしたい

package testArray;

public class TestArray
{
  public static void main(String[] args)
  {
     // Declare a new array of integers
     int[] anArray;

     // Sets the array length to 5
     anArray = new int[5];

     // Setting each array element
     anArray[0] = 1;
     anArray[1] = 2;
     anArray[2] = 3;
     anArray[3] = 4;
     anArray[4] = 5;

     // Displaying the value of each array element
     System.out.println("Element at index 0: " + anArray[0]);
     System.out.println("Element at index 1: " + anArray[1]);
     System.out.println("Element at index 2: " + anArray[2]);
     System.out.println("Element at index 3: " + anArray[3]);
     System.out.println("Element at index 4: " + anArray[4]);

  }
}
于 2013-08-16T01:37:58.470 に答える