for (Color c: Color.values()) System.out.println(“find value:” + c);
2.在enum中定义方法和变量,比如我们可以为Color增加一个方法随机返回一个颜色。
public enum Color { Red, Green, Blue;
/* *定义一个变量表示枚举值的数目。 *(我有点奇怪为什么sun没有给enum直接提供一个size方法). */ private static int number = Color.values().length ;
/** * 随机返回一个枚举值 @return a random enum value. */ public static Color getRandomColor(){ long random = System.currentTimeMillis() % number; switch ((int) random){ case 0: return Color.Red; case 1: return Color.Green; case 2: return Color.Blue; default : return Color.Red; } } }
public enum Color { Red { public String toString(){ return "Color.Red"; } }, Green { public String toString(){ return "Color.Green"; } }, Blue{ public String toString(){ return "Color.Blue"; } }; }