Multiple Enum Classes in one Java File
19,710
They can be three inner classes like this:
public class Types {
public enum Digits {...}
public enum Teens {...}
....
}
Then refer them Types.Digits.ONE
, Types.Teen.TWENTY
etc.
You can also use static imports like this:
import Types.Digits;
import Types.Teen;
..
in order to have shorter references: Digits.ONE
, Teen.TWENTY
etc.
Related videos on Youtube
Author by
popcoder
Updated on June 04, 2022Comments
-
popcoder almost 2 years
I have 3 String arrays with constants. eg:
String[] digit = {"one", "two", "three"}; String[] teen= {"ten", "twenty", "thirty"}; String[] anchors = {"hundred", "thousand", "million"};
I'm thinking of transferring these to enums separately, so I will have 3 enum classes:
digit
,teen
andanchors
withgetValue
methods implemented. But I don't want to have them in separate files as I have only small data and same type of data. What is the best way to have all these with access methods in same meaningful java file? -
jpm about 12 yearsThe only suggestion I would make is to change the signature of the enums to
public static enum
. That way, we can use a static import on the needed enums and save a bit of typing for the user. -
Eugene Retunsky about 12 yearsenums are already static - you don't have to declare them as static (like interfaces).
-
jpm about 12 yearsRight you are. I'm sure I learned that at some point. Still, unless using the fully qualified name adds readability or clarity, I would still suggest going with the static import, though that's really a point of personal preference, I suppose.