JavaA2Z

KAB-studio > プログラミング > JavaA2Z > ArrayIndexOutOfBoundsExceptionとは

ArrayIndexOutOfBoundsException

日本語 配列範囲外例外
英語 array index out of bounds exception
ふりがな あれいいんでっくすあうとおぶばうんずえくせぷしょん
フリガナ アレイインデックスアウトオブバウンズエクセプション

解説

J2SEに含まれるクラスのひとつ。パッケージも含めたクラス名java.lang.ArrayIndexOutOfBoundsException。
例外の一種。配列にアクセスする際に、インデックスナンバー要素数より大きい場合やマイナスの場合に投げられる
RuntimeExceptionクラスサブクラスであるため、明示的catchthrows指定する必要はない。むしろ、適切なインデックスナンバーを使用していれば決して発生しない例外であり、絶対に発生しないようにしなければならない。決してforループから抜けるために使用してはならない。

(KAB-studioからのおしらせです)

サンプルプログラム(とか)サンプルを別ウィンドウで表示サンプルをクリップボードへコピー(WindowsでIEの場合のみ)

// Sample.java
public class Sample
{
    public static void main( String[] args )
    {
        try
        {
            // ArrayIndexOutOfBoundsExceptionを投げます。
            int[] ints = new int[1];
            System.out.println( ints[100] );
        }
        catch( ArrayIndexOutOfBoundsException e )
        {
            // 投げられたArrayIndexOutOfBoundsExceptionを拾いました。
            e.printStackTrace();
            // java.lang.ArrayIndexOutOfBoundsException: 100
            //     at Sample.main(Sample.java:10)
            // ちなみにこのように「使われたインデックスナンバー」も
            // 出力されます。
        }

        try
        {
            // インデックスナンバーがマイナスでも投げられます。
            int[] ints = new int[1];
            System.out.println( ints[-1] );
        }
        catch( ArrayIndexOutOfBoundsException e )
        {
            // 投げられたArrayIndexOutOfBoundsExceptionを拾いました。
            e.printStackTrace();
            // java.lang.ArrayIndexOutOfBoundsException: -1
            // at Sample.main(Sample.java:26)
        }
    }
}
// Sample.java
public class Sample
{
    public static void main( String[] args )
    {
        try
        {
            // ArrayIndexOutOfBoundsExceptionを投げます。
            int[] ints = new int[1];
            System.out.println( ints[100] );
        }
        catch( ArrayIndexOutOfBoundsException e )
        {
            // 投げられたArrayIndexOutOfBoundsExceptionを拾いました。
            e.printStackTrace();
            // java.lang.ArrayIndexOutOfBoundsException: 100
            //     at Sample.main(Sample.java:10)
            // ちなみにこのように「使われたインデックスナンバー」も
            // 出力されます。
        }

        try
        {
            // インデックスナンバーがマイナスでも投げられます。
            int[] ints = new int[1];
            System.out.println( ints[-1] );
        }
        catch( ArrayIndexOutOfBoundsException e )
        {
            // 投げられたArrayIndexOutOfBoundsExceptionを拾いました。
            e.printStackTrace();
            // java.lang.ArrayIndexOutOfBoundsException: -1
            // at Sample.main(Sample.java:26)
        }
    }
}

この単語を含むページ

「みだし」に含まれているページ

はてなブックマーク 詳細を表示 はてなブックマーク ブックマーク数
livedoorクリップ 詳細を表示 livedoorクリップ ブックマーク数
Yahoo!ブックマーク 詳細を表示 users
del.icio.us 登録する RSSに登録
サンプルを別ウィンドウで表示
サンプルをクリップボードへコピー(WindowsでIEの場合のみ)
update:2005/03/24
このページは、Javaプログラミング言語についての用語を網羅した辞書「JavaA2Z」の一ページです。
詳しくは「JavaA2Z」表紙の説明をご覧ください。