小兔网

本篇文章给大家介绍一下Java中enum常见的用法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

Java中enum常见的用法是什么-java教程

常量定义

public enum WeekDay {    SUN, MON, TUE, WED, THT, FRI, SAT}

swich

public enum WeekDay {    SUN, MON, TUE, WED, THT, FRI, SAT}public class SelectDay{    WeekDay weekday = WeekDay.SUN;    public void select(){        switch(weekday){            case SUN:                weekday = WeekDay.SUN;                break;            ...        }    }}

向枚举添加新方法

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;      }  }

覆盖枚举方法

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;     }     //覆盖方法     @Override     public String toString() {     return this.index+"_"+this.name;     } }

实现接口

public interface Behaviour {     void print();     String getInfo(); } public enum Color implements Behaviour{     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;     }     //接口方法     @Override     public String getInfo() {         return this.name;     }     //接口方法     @Override     public void print() {         System.out.println(this.index+":"+this.name);     } }

接口组织枚举

public interface Food {     enum Coffee implements Food{         BLACK_COFFEE,DECAF_COFFEE,LATTE,CAPPUCCINO     }     enum Dessert implements Food{         FRUIT, CAKE, GELATO     } }

枚举集合

public class Test {    public static void main(String[] args) {        EnumSet<WeekDay> week = EnumSet.noneOf(WeekDay.class);        week.add(WeekDay.MON);        System.out.println("EnumSet中的元素:" + week);        week.remove(WeekDay.MON);        System.out.println("EnumSet中的元素:" + week);        week.addAll(EnumSet.complementOf(week));        System.out.println("EnumSet中的元素:" + week);        week.removeAll(EnumSet.range(WeekDay.FRI, WeekDay.SAT));        System.out.println("EnumSet中的元素:" + week);    }

推荐:《java视频教程

以上就是Java中enum常见的用法是什么的知识。速戳>>知识兔学习精品课!