您可以使用 Java 的反射机制来遍历获取实体的属性值。以下是一个示例代码:

import java.lang.reflect.Field;
import java.util.List;

public class Main {
    public static <T> void printEntityProperties(List<?> list, Class<T> clazz) {
        for (Object obj : list) {
            try {
                T entity = clazz.cast(obj);
                Field[] fields = clazz.getDeclaredFields();
                for (Field field : fields) {
                    field.setAccessible(true);
                    Object value = field.get(entity);
                    System.out.println(field.getName() + ': ' + value);
                }
            } catch (ClassCastException | IllegalAccessException e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) {
        List<Object> list = new ArrayList<>();
        list.add(new Person('John', 25));
        list.add(new Person('Jane', 30));
        printEntityProperties(list, Person.class);
    }

    static class Person {
        private String name;
        private int age;

        public Person(String name, int age) {
            this.name = name;
            this.age = age;
        }

        public String getName() {
            return name;
        }

        public int getAge() {
            return age;
        }
    }
}

在上面的示例中,我们定义了一个 printEntityProperties 方法,它接受一个 List<?> 和一个 Class<T> 作为参数。我们使用泛型 T 来表示实体的类型。然后,我们使用 Java 的反射机制来获取实体的所有字段,并通过 field.get(entity) 来获取字段的值。

main 方法中,我们创建了一个包含 Person 实例的 List,并调用 printEntityProperties 方法来遍历并打印实体的属性值。

输出结果如下:

name: John
age: 25
name: Jane
age: 30

请注意,这只是一个简单的示例,实际应用中可能需要处理更复杂的情况,比如处理继承关系、处理字段的修饰符等。

Java 反射:遍历 List 中实体对象的属性值

原文地址: https://www.cveoy.top/t/topic/qnJB 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录