Я имею
Class<? extends Object> class1 = obj.getClass();
Field[] fields = class1.getDeclaredFields();
for (Field aField : fields) {
aField.setAccessible(true);
if (aField.getType().isArray()) {
for (?? vals : aField) {
System.out.println(vals);
}
}
}
Вы могли бы использовать что-то вроде этого:
if (aField.getType().isArray()) {
Object array = aField.get(obj);
int length = Array.getLength(array);
for (int i = 0; i < length; i++) {
System.out.println(Array.get(array, i));
}
}
Другими словами, вы сначала извлекаете значение из поля с помощью Field.get
, а затем используете java.lang.reflect.Array
вспомогательный класс для доступа к длине и отдельным элементам.