你的位置:首页 > Java教程

[Java教程]【Simple Java】Java枚举举例


Java中的枚举跟其它普通类很像,在其内部包含了一堆预先定义好的对象集合;

下面是若干个关于枚举的例子,可以帮助我们更好的使用枚举类型;

一个简单的例子

package simplejava;enum Color {  RED, YELLOW, BLUE; // each is an instance of Color}public class Q5 {  public static void main(String[] args) {    for (Color color : Color.values()) {      System.out.println(color);    }  }}

结果输出:

RED
YELLOW
BLUE

调用构造方法

package simplejava;enum Color {  RED(1), YELLOW(2), BLUE(3); // each is an instance of Color  private int value;  private Color(int i) {    this.value = i;  }  public void printValue(){    System.out.println(this.value);  }}public class Q5 {  public static void main(String[] args) {    for (Color color : Color.values()) {      color.printValue();    }  }}

结果打印:

1
2
3

什么时候使用枚举

Java中的枚举与普通类很像,内部包含了一堆预先定义好的对象集合;

一个比较好的使用场合是阻止无效参数。如下代码示例:

public void doSomethingWithColor(int color);

这是一个模棱两可的接口,其他开发人员根本不清楚往这个接口传入哪些参数,只知道是int类型;

举个例子,假如你有一个枚举类型Color,包含BLACK,RED两个对象集合,那么这个接口就变成这样:

public void doSomethingWithColor(Color color);

使用枚举类型,将大大增强代码的可读性,同时可以阻止传入无效的参数;

 

译文链接:http://www.programcreek.com/2014/01/java-enum-examples/