Javaレコード-87-java.lang.reflect.Array
1248 ワード
java.lang.reflect.Arrayクラスは、配列要素を動的に作成およびアクセスするための様々な静的方法を提供する.
import java.lang.reflect.Array;
public class ArrayTester1 {
public static void main(String[] args) throws Exception{
Class<?> classType = Class.forName("java.lang.String");
Object array = Array.newInstance(classType, 10);
Array.set(array, 5, "hello");
String str = (String)Array.get(array, 5);
System.out.println(str); //hello
}
}
public class ArrayTester2 {
public static void main(String[] args) throws Exception{
int[] dims = new int[]{5, 10, 15};
Object array = Array.newInstance(Integer.TYPE, dims); // , 5、10、15
// System.out.println(array instanceof int[][][]); //true
Object arrayobj = Array.get(array, 3); // ,
// System.out.println(arrayobj instanceof int[][]); //true
arrayobj = Array.get(arrayobj, 5); //
Array.set(arrayobj, 10, 37);
int[][][] arraycast = (int[][][])array;
System.out.println(arraycast[3][5][10]);
// System.out.println(Integer.TYPE); //int
// System.out.println(Integer.class); //class java.lang.Integer
}
}