Search in sources :

Example 1 with List

use of dyvil.collection.List in project Dyvil by Dyvil.

the class FieldReflection method getObjects.

@NonNull
public static <T> T[] getObjects(@NonNull Class clazz, Object instance, @NonNull Class<T> fieldType, boolean subtypes) {
    List list = new ArrayList();
    Field[] fields = clazz.getDeclaredFields();
    for (Field field : fields) {
        try {
            Class c = field.getType();
            Object o = field.get(instance);
            if (c == fieldType || subtypes && fieldType.isAssignableFrom(c)) {
                list.add(o);
            }
        } catch (Exception ex) {
        }
    }
    return (T[]) list.toArray();
}
Also used : Field(java.lang.reflect.Field) ArrayList(dyvil.collection.mutable.ArrayList) ArrayList(dyvil.collection.mutable.ArrayList) List(dyvil.collection.List) NonNull(dyvil.annotation.internal.NonNull)

Aggregations

NonNull (dyvil.annotation.internal.NonNull)1 List (dyvil.collection.List)1 ArrayList (dyvil.collection.mutable.ArrayList)1 Field (java.lang.reflect.Field)1