反射API中对数组的操作方式不同于一般的java对象,需要通过专门的java.lang.reflect.Array工具类进行实现。Array类提供了创建和操作数组中元素的方法。Array.newInstance方法用来创建新数组,第一个参数为数组中元素的类型,后面的参数为数组各维度的长度(newInstance为变长参数的方法)。
public static void useArray() {
String[] names = (String[]) Array.newInstance(String.class, 10);
names[0] = "Hello";
Array.set(names, 1, "World");
String str = (String) Array.get(names, 0);
int[][][] matrix1 = (int[][][]) Array.newInstance(int.class, 3, 3, 3);
matrix1[0][0][0] = 1;
int[][][] matrix2 = (int[][][]) Array.newInstance(int[].class, 3, 4);
matrix2[0][0] = new int[10];
matrix2[0][1] = new int[3];
matrix2[0][0][1] = 1;
}
转载请注明原文地址: https://ju.6miu.com/read-1124973.html