使用反射操作Array类型
生活随笔
收集整理的这篇文章主要介绍了
使用反射操作Array类型
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
使用反射操作Array类型:
a):
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);
b):
public class ArrayTester2{
public static void main(String[] args)
{
int[] dims = new int[] { 5, 10, 15 };
Object array = Array.newInstance(Integer.TYPE, dims);//dims为创建的新数组的维度(这里是一个三维数组5,10,15)
System.out.println(array instanceof int[][][]);//检查一下是不是三维数组
Object arrayObj = Array.get(array, 3);//arrayObj是一个二维数组(三维数组的第3个)
arrayObj = Array.get(arrayObj, 5);//arrayObj是一个一维数组(二维数组的第5个)
Array.setInt(arrayObj, 10, 37);//a为一维数组的第10位赋值为37.
int[][][] arrayCast = (int[][][]) array;
System.out.println(arrayCast[3][5][10]);
System.out.println(Integer.TYPE);
System.out.println(Integer.class);
}
}
另:Integer.TYPE 返回的是 int,而Integer .class返回的是 Integer 类所对应的Class对象。
本文为<北京圣思园Java培训教学视频Java.SE 反射机制大总结>视频笔记
转载于:https://www.cnblogs.com/myfjd/archive/2012/01/13/2322044.html
与50位技术专家面对面20年技术见证,附赠技术全景图总结
以上是生活随笔为你收集整理的使用反射操作Array类型的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Google 超分辨率技术 RAISR
- 下一篇: FISTA浅析