У меня есть класс, который я хочу проанализировать с помощью java.reflection. Я создал класс, у которого есть Arraylist другого объекта. Когда я хочу проанализировать класс, у которого есть ArrayList, класс реконструирован, но я не знаю, как получить размер Arraylist.получить размер arraylist от объекта используя отражение
Прилагаю код.
общественный класс Отдел { частных студентов ArrayList;
public Department() {
super();
Students = new ArrayList<>();
}
public Department(ArrayList<Student> students) {
super();
Students = students;
}
public void addStudent(Student student){
if(student != null){
this.Students.add(student);
}
}
@Override
public String toString() {
return "Class [Students=" + Students + "]";
}
public static void analyze2(Object obj){
Class c = obj.getClass();
Field[] fieldType= c.getDeclaredFields();
ArrayList<?> ob = new ArrayList<>();
System.out.println(obj.toString());
for(Field field : fieldType){
Class cd = field.getType();
ob = (ArrayList<?>) cd.cast(ob);
System.out.println(field.getName()+" "+ field.getType());
System.out.println(ob.size());
}
}
Спасибо! оно работает –