Javareflect-array-newinstance1

提供:Dev Guides
移動先:案内検索

java.lang.reflect.Array.newInstance()メソッドの例

説明

  • java.lang.reflect.Array.newInstance(Class <?> componentType、int length)*メソッドは、指定されたコンポーネントタイプと長さで新しい配列を作成します。

宣言

以下は、* java.lang.reflect.Array.newInstance(Class <?> componentType、int length)*メソッドの宣言です。

public static Object newInstance(Class<?> componentType, int length)
   throws IllegalArgumentException, NegativeArraySizeException

パラメーター

  • componentType -新しい配列のコンポーネントタイプを表すClassオブジェクト。
  • length -新しい配列の次元を表すintの配列。

戻り値

新しい配列。

例外

  • NullPointerException -指定されたcomponentTypeがnullの場合。
  • IllegalArgumentException -指定された次元引数がゼロ次元配列である場合、または要求された次元の数が実装によってサポートされる配列次元の数の制限(通常255)を超える場合、またはcomponentTypeがVoid.TYPEである場合
  • ArrayIndexOutOfBoundsException -指定されたインデックス引数が負の場合。

次の例は、java.lang.reflect.Array.newInstance(Class <?> componentType、int length)メソッドの使用方法を示しています。

package com.finddevguides;

import java.lang.reflect.Array;

public class ArrayDemo {
   public static void main(String[] args) {

      String[] stringArray = (String[]) Array.newInstance(String.class, 3);

      Array.set(stringArray, 0, "Mahesh");
      Array.set(stringArray, 1, "Ramesh");
      Array.set(stringArray, 2, "Suresh");

      System.out.println("stringArray[0] = " + Array.get(stringArray, 0));
      System.out.println("stringArray[1] = " + Array.get(stringArray, 1));
      System.out.println("stringArray[2] = " + Array.get(stringArray, 2));
   }
}

上記のプログラムをコンパイルして実行すると、次の結果が生成されます-

stringArray[0] = Mahesh
stringArray[1] = Ramesh
stringArray[2] = Suresh