作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用下面的方法,我可以传递任何类,并且可以获得列表的值。
public static void GetFieldName(ArrayList<Object> object)
throws IllegalArgumentException, IllegalAccessException {
for (Object obj : object)
for (Field field : obj.getClass().getDeclaredFields()) {
Log.i("Field", field.getName() + ":" + field.get(obj));
}
}
假设我有两个类(class) Student
和Employee
。我不知道他们两个都有多少个领域。我仍然可以使用上述方法获取每个字段的值。
现在,我想检查特定类中是否有任何 ArrayList,即假设 Student
类有一个 Arraylist<Address>
的Address
类(class)。那么我可以获得数组列表值吗?
最佳答案
您需要使用Class#isAssignableFrom(Class cls)方法。
for (Field field : obj.getClass().getDeclaredFields()) {
Log.i("Field", field.getName() + ":" + field.get(obj));
if (field.getType().isAssignableFrom(ArrayList.class) {
field.setAccessible(true); //needed for private fields
Object value = field.get(c); //getting the private field value
ArrayList<Address> x = (ArrayList<Address>) value; // cast to ArrayList<Address>
}
}
更多信息:
关于java - 获取字段名称并检查数组列表是否存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18930082/
概述 CentOS Stream 成立于 2019 年,是“RHEL 下一步的滚动预览”。Red Hat 首席技术官 Chris Wright 和 CentOS 社区经理 Rich Bowen 各
我有一个使用 Mesosphere DC/OS 编排选项进行配置的 Azure 容器服务 (ACS) 集群。我可以在 Marathon UI 中创建一个应用程序。 但是,当我通过 Marathon U
我是一名优秀的程序员,十分优秀!