モジュール java.base
パッケージ java.lang.reflect

クラスArray



  • public final class Array
    extends Object
    Arrayクラスは、Java配列を動的に作成してアクセスするためのstaticメソッドを提供します。

    Arrayは、取得動作または設定動作中に起こる拡大変換は許可しますが、縮小変換が発生するとIllegalArgumentExceptionがスローされます。

    導入されたバージョン:
    1.1
    • メソッドのサマリー

      すべてのメソッド 静的メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      static Object get​(Object array, int index)
      指定された配列オブジェクトの指定されたインデックスのコンポーネント値を返します。
      static boolean getBoolean​(Object array, int index)
      指定された配列オブジェクトの指定されたインデックスのコンポーネント値をbooleanとして返します。
      static byte getByte​(Object array, int index)
      指定された配列オブジェクトの指定されたインデックスのコンポーネント値をbyteとして返します。
      static char getChar​(Object array, int index)
      指定された配列オブジェクトの指定されたインデックスのコンポーネント値をcharとして返します。
      static double getDouble​(Object array, int index)
      指定された配列オブジェクトの指定されたインデックスのコンポーネント値をdoubleとして返します。
      static float getFloat​(Object array, int index)
      指定された配列オブジェクトの指定されたインデックスのコンポーネント値をfloatとして返します。
      static int getInt​(Object array, int index)
      指定された配列オブジェクト内の指定されたインデックスのコンポーネント値をintとして返します。
      static int getLength​(Object array)
      指定された配列オブジェクトの長さをintで返します。
      static long getLong​(Object array, int index)
      指定された配列オブジェクトの指定されたインデックスのコンポーネント値をlongとして返します。
      static short getShort​(Object array, int index)
      指定された配列オブジェクトの指定されたインデックスのコンポーネント値をshortとして返します。
      static Object newInstance​(Class<?> componentType, int length)
      指定されたコンポーネント型とコンポーネント・サイズを使用して新しい配列を作成します。
      static Object newInstance​(Class<?> componentType, int... dimensions)
      指定されたコンポーネント型と大きさで新しい配列を作成します。
      static void set​(Object array, int index, Object value)
      指定された配列オブジェクトのインデックス付きコンポーネントの値を、指定された新しい値に設定します。
      static void setBoolean​(Object array, int index, boolean z)
      指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたboolean値に設定します。
      static void setByte​(Object array, int index, byte b)
      指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたbyte値に設定します。
      static void setChar​(Object array, int index, char c)
      指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたchar値に設定します。
      static void setDouble​(Object array, int index, double d)
      指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたdouble値に設定します。
      static void setFloat​(Object array, int index, float f)
      指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたfloat値に設定します。
      static void setInt​(Object array, int index, int i)
      指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたint値に設定します。
      static void setLong​(Object array, int index, long l)
      指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたlong値に設定します。
      static void setShort​(Object array, int index, short s)
      指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたshort値に設定します。
    • メソッドの詳細

      • newInstance

        public static Object newInstance​(Class<?> componentType,
                                         int length)
                                  throws NegativeArraySizeException
        指定されたコンポーネント型とコンポーネント・サイズを使用して新しい配列を作成します。 このメソッド呼出しの動作は、次のように配列を作成した場合と同じです。
         int[] x = {length};
         Array.newInstance(componentType, x);
         

        新しい配列の次元数が255を超えることはできません。

        パラメータ:
        componentType - 新しい配列のコンポーネント型を表すClassオブジェクト
        length - 新しい配列の長さ
        戻り値:
        新しい配列
        例外:
        NullPointerException - 指定されたcomponentTypeパラメータがnullの場合
        IllegalArgumentException - componentTypeがVoid.TYPEである場合、または要求された配列インスタンスの次元数が255を超える場合
        NegativeArraySizeException - 指定されたlengthが負の場合
      • newInstance

        public static Object newInstance​(Class<?> componentType,
                                         int... dimensions)
                                  throws IllegalArgumentException,
                                         NegativeArraySizeException
        指定されたコンポーネント型と大きさで新しい配列を作成します。 componentTypeが配列でないクラスまたはインタフェースを表す場合、新しい配列の大きさはdimensions.length、コンポーネント型はcomponentTypeです。 componentTypeが配列クラスを表す場合、新しい配列の次元数は、dimensions.lengthおよびcomponentTypeの次元数の合計です。 この場合、新しい配列のコンポーネント型はcomponentTypeのコンポーネント型です。

        新しい配列の次元数が255を超えることはできません。

        パラメータ:
        componentType - 新しい配列のコンポーネント型を表すClassオブジェクト
        dimensions - 新しい配列の次元数を表すintの配列
        戻り値:
        新しい配列
        例外:
        NullPointerException - 指定されたcomponentType引数がnullの場合
        IllegalArgumentException - 指定されたdimensions引数が0次元の配列である場合、componentTypeがVoid.TYPEである場合、または要求された配列インスタンスの次元数が255を超える場合
        NegativeArraySizeException - 指定されたdimensions引数のコンポーネントのいずれかが負の場合。
      • getLength

        public static int getLength​(Object array)
                             throws IllegalArgumentException
        指定された配列オブジェクトの長さをintで返します。
        パラメータ:
        array - 配列
        戻り値:
        配列の長さ
        例外:
        IllegalArgumentException - オブジェクト引数が配列ではない場合
      • get

        public static Object get​(Object array,
                                 int index)
                          throws IllegalArgumentException,
                                 ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの指定されたインデックスのコンポーネント値を返します。 プリミティブ型の場合、オブジェクト内に自動的に格納されてから返されます。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント(おそらくラップされた)値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
      • getBoolean

        public static boolean getBoolean​(Object array,
                                         int index)
                                  throws IllegalArgumentException,
                                         ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの指定されたインデックスのコンポーネント値をbooleanとして返します。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合、またはインデックスが指定された要素を識別子または拡大変換によって戻り値の型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        get(java.lang.Object, int)
      • getByte

        public static byte getByte​(Object array,
                                   int index)
                            throws IllegalArgumentException,
                                   ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの指定されたインデックスのコンポーネント値をbyteとして返します。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合、またはインデックスが指定された要素を識別子または拡大変換によって戻り値の型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        get(java.lang.Object, int)
      • getChar

        public static char getChar​(Object array,
                                   int index)
                            throws IllegalArgumentException,
                                   ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの指定されたインデックスのコンポーネント値をcharとして返します。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合、またはインデックスが指定された要素を識別子または拡大変換によって戻り値の型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        get(java.lang.Object, int)
      • getShort

        public static short getShort​(Object array,
                                     int index)
                              throws IllegalArgumentException,
                                     ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの指定されたインデックスのコンポーネント値をshortとして返します。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合、またはインデックスが指定された要素を識別子または拡大変換によって戻り値の型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        get(java.lang.Object, int)
      • getInt

        public static int getInt​(Object array,
                                 int index)
                          throws IllegalArgumentException,
                                 ArrayIndexOutOfBoundsException
        指定された配列オブジェクト内の指定されたインデックスのコンポーネント値をintとして返します。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合、またはインデックスが指定された要素を識別子または拡大変換によって戻り値の型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        get(java.lang.Object, int)
      • getLong

        public static long getLong​(Object array,
                                   int index)
                            throws IllegalArgumentException,
                                   ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの指定されたインデックスのコンポーネント値をlongとして返します。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合、またはインデックスが指定された要素を識別子または拡大変換によって戻り値の型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        get(java.lang.Object, int)
      • getFloat

        public static float getFloat​(Object array,
                                     int index)
                              throws IllegalArgumentException,
                                     ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの指定されたインデックスのコンポーネント値をfloatとして返します。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合、またはインデックスが指定された要素を識別子または拡大変換によって戻り値の型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        get(java.lang.Object, int)
      • getDouble

        public static double getDouble​(Object array,
                                       int index)
                                throws IllegalArgumentException,
                                       ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの指定されたインデックスのコンポーネント値をdoubleとして返します。
        パラメータ:
        array - 配列
        index - インデックス
        戻り値:
        指定された配列の指定されたインデックスのコンポーネント値
        例外:
        NullPointerException - 指定されたオブジェクトがnullの場合
        IllegalArgumentException - 指定されたオブジェクトが配列ではない場合、またはインデックスが指定された要素を識別子または拡大変換によって戻り値の型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        get(java.lang.Object, int)
      • set

        public static void set​(Object array,
                               int index,
                               Object value)
                        throws IllegalArgumentException,
                               ArrayIndexOutOfBoundsException
        指定された配列オブジェクトのインデックス付きコンポーネントの値を、指定された新しい値に設定します。 新しい値は、配列にプリミティブなコンポーネント型が指定されると、最初に自動的にラップ解除されます。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        value - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列でない場合、または配列のコンポーネント型がプリミティブであり、ラップ解除変換が失敗した場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
      • setBoolean

        public static void setBoolean​(Object array,
                                      int index,
                                      boolean z)
                               throws IllegalArgumentException,
                                      ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたboolean値に設定します。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        z - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列ではない場合、または指定された値を識別子またはプリミティブ拡大変換によって、基本となる配列のコンポーネント型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        set(java.lang.Object, int, java.lang.Object)
      • setByte

        public static void setByte​(Object array,
                                   int index,
                                   byte b)
                            throws IllegalArgumentException,
                                   ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたbyte値に設定します。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        b - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列ではない場合、または指定された値を識別子またはプリミティブ拡大変換によって、基本となる配列のコンポーネント型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        set(java.lang.Object, int, java.lang.Object)
      • setChar

        public static void setChar​(Object array,
                                   int index,
                                   char c)
                            throws IllegalArgumentException,
                                   ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたchar値に設定します。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        c - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列ではない場合、または指定された値を識別子またはプリミティブ拡大変換によって、基本となる配列のコンポーネント型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        set(java.lang.Object, int, java.lang.Object)
      • setShort

        public static void setShort​(Object array,
                                    int index,
                                    short s)
                             throws IllegalArgumentException,
                                    ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたshort値に設定します。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        s - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列ではない場合、または指定された値を識別子またはプリミティブ拡大変換によって、基本となる配列のコンポーネント型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        set(java.lang.Object, int, java.lang.Object)
      • setInt

        public static void setInt​(Object array,
                                  int index,
                                  int i)
                           throws IllegalArgumentException,
                                  ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたint値に設定します。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        i - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列ではない場合、または指定された値を識別子またはプリミティブ拡大変換によって、基本となる配列のコンポーネント型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        set(java.lang.Object, int, java.lang.Object)
      • setLong

        public static void setLong​(Object array,
                                   int index,
                                   long l)
                            throws IllegalArgumentException,
                                   ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたlong値に設定します。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        l - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列ではない場合、または指定された値を識別子またはプリミティブ拡大変換によって、基本となる配列のコンポーネント型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        set(java.lang.Object, int, java.lang.Object)
      • setFloat

        public static void setFloat​(Object array,
                                    int index,
                                    float f)
                             throws IllegalArgumentException,
                                    ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたfloat値に設定します。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        f - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列ではない場合、または指定された値を識別子またはプリミティブ拡大変換によって、基本となる配列のコンポーネント型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        set(java.lang.Object, int, java.lang.Object)
      • setDouble

        public static void setDouble​(Object array,
                                     int index,
                                     double d)
                              throws IllegalArgumentException,
                                     ArrayIndexOutOfBoundsException
        指定された配列オブジェクトの、指定されたインデックスのコンポーネント値を、指定されたdouble値に設定します。
        パラメータ:
        array - 配列
        index - 配列の中のインデックス
        d - 指定されたインデックスのコンポーネントの新しい値
        例外:
        NullPointerException - 指定されたオブジェクト引数がnullの場合
        IllegalArgumentException - 指定されたオブジェクト引数が配列ではない場合、または指定された値を識別子またはプリミティブ拡大変換によって、基本となる配列のコンポーネント型に変換できない場合
        ArrayIndexOutOfBoundsException - 指定されたindex引数が負の場合、または指定された配列の長さ以上の場合
        関連項目:
        set(java.lang.Object, int, java.lang.Object)