Alex Rivera | Logout

Get enumeration values from Class

Asked 2009-06-09T06:21:30.643
15

Is it possible to get the enumeration values from a Class? Let me elaborate this a bit. If I have an enum for example FooBar, then I can get the values of FooBar by calling FooBar.values() which will return an array with the enumerations (FooBar[]). My problem is, that I have a method which takes as an input parameter a class (Class c) and within the method I check whether or not it is an enum (c.isEnum()). If it is an enum, I would need to somehow get the enum values, the problem is that I don't know quite how to do this, I'm not even totally sure it is possible. So, is it possible and if it is, how can I accomplish this? (Note that the solution needs to be generic, in other words not if-else's).

Edit
Report

2 Answers

28

Um... have you looked at the API doc?

Class.getEnumConstants()

answered 2009-06-09T06:37:04.840
0

Edited: You can use c.getClass().getEnumConstants() to get the values of the constants

(it said 'names' instead of 'values' and added some unnecessary stuff)

answered 2009-06-09T06:41:51.990

Your Answer