学习啦>知识大全>知识百科>公共基础知识>

java枚举和常量定义的区别

时间: 谢君787 分享

  枚举是一个被命名的整型常数的集合,枚举在Java编程中很常见。以下是由学习啦小编整理关于java枚举的常见用法的内容,希望大家喜欢!

  Java枚举的常见用法

  用法一:常量

  在JDK1.5之前,我们定义常量都是:publicstaticfianl....。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法

  Java代码

  public enum Color {

  RED, GREEN, BLANK, YELLOW

  }

  用法二:switch

  JDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强。

  Java代码

  enum Signal {

学习啦在线学习网   GREEN, YELLOW, RED

  }

  public class TrafficLight {

  Signal color = Signal.RED;

  public void change() {

学习啦在线学习网   switch (color) {

  case RED:

  color = Signal.GREEN;

  break;

学习啦在线学习网   case YELLOW:

  color = Signal.RED;

  break;

学习啦在线学习网   case GREEN:

  color = Signal.YELLOW;

  break;

  }

  }

  }

  用法三:向枚举中添加新方法

  如果打算自定义自己的方法,那么必须在enum实例序列的最后添加一个分号。而且Java要求必须先定义enum实例。

  Java代码

学习啦在线学习网   public enum Color {

  RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);

  // 成员变量

  private String name;

  private int index;

  // 构造方法

学习啦在线学习网   private Color(String name, int index) {

学习啦在线学习网   this.name = name;

学习啦在线学习网   this.index = index;

  }

  // 普通方法

  public static String getName(int index) {

学习啦在线学习网   for (Color c : Color.values()) {

  if (c.getIndex() == index) {

  return c.name;

  }

  }

  return null;

  }

学习啦在线学习网   // get set 方法

  public String getName() {

  return name;

  }

  public void setName(String name) {

学习啦在线学习网   this.name = name;

  }

  public int getIndex() {

学习啦在线学习网   return index;

  }

  public void setIndex(int index) {

  this.index = index;

  }

  }

1808239