I was wondering if anyone knows how to get the size of an array object using reflection?
I have a Vehicles component containing an array object of type Auto .
Vehicles.java
public class Vehicles{ private Car[] cars;
Car.java
public class Car{ private String type; private String make; private String model;
I was wondering how can I get the size of an array of cars in a component for vehicles using Java Reflection?
I current has the following:
final Field[] fields = vehicles.getClass().getDeclaredFields(); if(fields.length != 0){ for(Field field : fields){ if(field.getType().isArray()){ System.out.println("Array of: " + field.getType()); System.out.println(" Length: " + Array.getLength(field.getType())); } } }
which leads to the following error:
java.lang.IllegalArgumentException: Argument is not an array at java.lang.reflect.Array.getLength(Native Method)
Any ideas?
Harvey sembhi
source share