答えて

4

IndexOutOfBoundsExceptionは、ArrayIndexOutOfBoundsException(配列内の無効なインデックスにアクセスするとスローされます)とStringIndexOutOfBoundsException(ストリング内の無効なインデックスにアクセスするとスローされます)のスーパークラスです。

無効なインデックスのリストにアクセスすると、基本クラスIndexOutOfBoundsExceptionのインスタンスがスローされます。

IndexOutOfBoundsExceptionまたはそのサブクラスをスローするいくつかのメソッドのJavadocには、基本クラスが含まれています。たとえば、String.charAtは、サブクラスStringIndexOutOfBoundsExceptionを実際にスローするときにIndexOutOfBoundsExceptionをスローすると文書化されています。

0

ArrayIndexOutOfBoundsExceptionは、メッセージ内の不正なインデックスを示します。

+2

'IndexOutOfBoundsException'はありませんか? – Tom

13

IndexOutOfBoundsException:何らかの並べ替えのインデックス(配列、文字列、またはベクトルなど)が範囲外であることを示すためにスローされます。

ArrayIndexOutOfBoundsException,StringIndexOutOfBoundsException は、IndexOutOfBoundsExceptionを実装した2つのクラスです。

ArrayIndexOutOfBoundsException:配列が不正なインデックスでアクセスされたことを示すためにスローされます。インデックスは負または配列のサイズ以上です。

StringIndexOutOfBoundsException:インデックスが負であるか、文字列のサイズよりも大きいことを示すために文字列メソッドによってスローされます。 charAtメソッドなどの一部のメソッドでは、インデックスが文字列のサイズと等しい場合にもこの例外がスローされます。

0

基本的に、配列または文字列の範囲外に出ると、ArrayIndexOutOfBoundsExceptionまたはStringIndexOutOfBoundsExceptionが発生します。 しかし、LinkedListや他のCollectionでは、より一般的なIndexOutOfBoundsExceptionを取得します。

関連する問題