我使用反射来检索一个实例字段如此的原语的数组:使用反射来检索未知类型
private int[] numbers = ....
随着字段对象,我可以检查如果该字段包含的阵列如果是这样,我想循环遍历数组中的整数。因此,如果包含上述领域的对象被称为“富”,那么我将有这样的事情:
field.setAccessible(true);
Object value = field.get(foo);
上述数值变量将包含我的int数组。我如何像普通数组那样处理这个对象并迭代它的值?
编辑:对不起,我错过了上述我的故事的关键点。我以通用的方式进行上述操作,因此我不知道数组包含的是什么原始数据。它可能是一个int []或long []等等。因此,在long []情况下显然不适用于int []。哎呀!
我可以看到get方法将检索某个索引处的值,但是,如何获取数组的长度? – digiarnie 2010-08-04 12:01:03
@digiarnie,这个方法有点隐藏在其他getter之间的javadoc中,它是'Array.getLength(Object array)':) – 2010-08-04 12:41:31
是的,这正是我想要的,是的,你是对的,它隐藏在所有那些其他的获得者,我只是简单地错过了!谢谢! – digiarnie 2010-08-04 23:07:01