Java 反射 isArray() 始终为 false

标签 java arrays reflection

我有一个关于 Java Reflections 的问题:我必须检查类的某个字段是否是数组。 但我的问题是:如果我直接在类的属性上运行 isArray() ,它就可以工作。但是如果我按照下面的方式使用它,它将不起作用。我猜是因为“真正的”数组在这个 Field 类中? 知道我如何让它工作吗 - 我认为缺少 Actor 或类似的东西? 谢谢!

Field fields[] = object.getClass().getDeclaredFields();

for (Field field : fields) {
    if (field.getClass().isArray()) {
        //Always false.
    }
}

最佳答案

关于Java 反射 isArray() 始终为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1000311/

相关文章:

c# - 获取依赖程序集?

Android 反射困惑

java - 将 Boolean.TRUE/Boolean.FALSE 或 true/false 分配给 boolean 原始变量是否更好?

java - JNI 异常访问冲突

javascript - 如何在 AngularJS 中使用 ng-repeat 循环过滤器?

java - 在 Java 中将用户输入的单词转换为 unicode 数组

Java 正则表达式仅匹配单词('、-、空格)

java - 实现 java.awt.Graphics 类

c++ - 如何在方括号内打印整个数组而不是打印每个值?

.net - PropertyInfo.GetSetMethod(true)不从基类返回属性的方法