2010-05-17 5 views
3

Comment passer d'un objet Class à une liste d'énumérations de manière générique?Java Enum List from Class

à savoir

public static <T extends Enum> List<T> getList(Class<T> clazz) 

Je ne peux pas trouver un moyen de se rendre à la méthode values()

Répondre

14

Class#getEnumConstants() renvoie les constantes de ENUM (type-safe).

Ainsi,

public static <T extends Enum> List<T> getList(Class<T> clazz) { 
    return Arrays.asList(clazz.getEnumConstants()); 
}