您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)Java中enum的用法有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
枚舉是Java1.5引入的新特性,通過關(guān)鍵字enum來定義枚舉類。枚舉類是一種特殊類,它和普通類一樣可以使用構(gòu)造器、定義成員變量和方法,也能實現(xiàn)一個或多個接口,但枚舉類不能繼承其他類.
public enum WeekDay { SUN, MON, TUE, WED, THT, FRI, SAT }
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; // 構(gòu)造方法 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; // 構(gòu)造方法 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; // 構(gòu)造方法 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); }
看完上述內(nèi)容,你們對Java中enum的用法有哪些有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。