Werte aus Enum Erst Zur Laufzeit Bekannt

Ich brauchen, um alle Werte aus einer enum, deren Typ erst zur Laufzeit bekannt. Ich habe kommen mit dem folgenden, aber würde gerne wissen, ob jemand weiß, einen besseren Weg:

enum TestEnum  {
  FOO,
  BAR
}

Enum[] getValuesForEnum(Class type) {
  try {
    Method m = type.getMethod("values");
    return (Enum[])m.invoke(null);
  } catch (Exception e) {
    throw new RuntimeException(e);
  }
}

Class testEnum = Class.forName("TestEnum");
getValuesForEnum(testEnum);

Dank!

  • Vielen Dank an alle, die ich verpasst, dass auf die API!
InformationsquelleAutor Scruffers | 2011-01-24
Schreibe einen Kommentar