gpt4 book ai didi

java - 通过反射获取 int[] 的值

转载 作者:行者123 更新时间:2023-11-30 08:47:59 25 4
gpt4 key购买 nike

好的,所以我试图通过反射获取 int[] 的值,但进展不顺利。这是我的代码:

我想获得的值(value)

public int[] blah;

for(Field f : c.getDeclaredFields()) {
f.setAccessible(true);
if(f.getName().toLowerCase().contains("blah")) {
Logger.write("Name: "+f.getName() +" Value:"+Array.get(f, 1));
}
}

无论我做什么,我总是得到“blah is not array”。

最佳答案

您正在尝试传递一个字段而不是字段值。首先,您需要使用 f.get(someObject)someObject 中获取实际数组,然后对结果调用 Array.get对象,像这样:

if(f.getName().toLowerCase().contains("blah")) {
Object arr = f.get(id);
System.out.println("Name: "+f.getName() +" Value:"+Array.get(arr, 1));
}

Demo.

关于java - 通过反射获取 int[] 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32169725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com