国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Java中的Enum用法介紹

Java中的Enum用法介紹

1. 關(guān)于Java Enum:

學(xué)過C/C++等語言的人,應(yīng)該都對Enum類型略知一二。Enum一般用來表示一組相同類型的常量。如性別、日期、月份、顏色等。對這些屬性用常量的好處是顯而易見的,不僅可以保證單例,且比較時候可以用”==”來替換equals。是一種好的習(xí)慣。JDK1.5之前沒有Enum這個類型,那時候一般用接口常量來替代。有了JavaEnum之后,可以更貼近的表示這種常量。

2. 如何使用Java Enum

簡單的用法:JavaEnum簡單的用法一般用于代表一組常用常量,可用來代表一類相同類型的常量值。如:

 

性別:

public enum SexEnum {

  male, female;

}

顏色:

public enum Color {

  RED, BLUE,GREEN,BLACK;

}

 

枚舉對象里面的值都必須是唯一的。

可以通過Enum類型名直接引用該常量,如SexEnum.male,Color.RED.

復(fù)雜用法:Java為枚舉類型提供了一些內(nèi)置的方法,同事枚舉常量還可以有自己的方法??梢院芊奖愕谋闅v枚舉對象,看個下面的例子:

 

1. 代碼一 WeekDay.java:

 

 

public enum WeekDay {

Mon("Monday"), Tue("Tuesday"), Wed("Wednesday"), Thu("Thursday"), Fri(

        "Friday"), Sat("Saturday"), Sun("Sunday");

 

 

private final String day;

 

private WeekDay(String day) {

     this.day = day;

}

 

 

public static void printDay(int i){

     switch(i){

     case 1: System.out.println(WeekDay.Mon); break;

     case 2: System.out.println(WeekDay.Tue);break;

     case 3: System.out.println(WeekDay.Wed);break;

     case 4: System.out.println(WeekDay.Thu);break;

     case 5: System.out.println(WeekDay.Fri);break;

     case 6: System.out.println(WeekDay.Sat);break;

     case 7: System.out.println(WeekDay.Sun);break;

     default:System.out.println("wrong number!");

     }

}

 

public String getDay() {

     return day;

}

}

 

2.  代碼二 WeekDayTest.java:

 

 

public class WeekDayTest {

  public static void main(String args[]) {

      for (WeekDay day : WeekDay.values()) {

         System.out.println(day + "====>" + day.getDay());

      }

      WeekDay.printDay(5);

  }

}

 

輸出結(jié)果為:

          Mon====>Monday

Tue====>Tuesday

Wed====>Wednesday

Thu====>Thursday

Fri====>Friday

Sat====>Saturday

Sun====>Sunday

Fri

3. Java Enum原理

Java Enum類型的語法結(jié)構(gòu)盡管和java類的語法不一樣,應(yīng)該說差別比較大。但是經(jīng)過編譯器編譯之后產(chǎn)生的是一個class文件。該class文件經(jīng)過反編譯可以看到實際上是生成了一個類,該類繼承了java.lang.Enum<E>.

WeekDay經(jīng)過反編譯(javap WeekDay命令)之后得到的內(nèi)容如下(去掉了匯編代碼):

public final class WeekDay extends java.lang.Enum{

    public static final WeekDay Mon;

    public static final WeekDay Tue;

    public static final WeekDay Wed;

    public static final WeekDay Thu;

    public static final WeekDay Fri;

    public static final WeekDay Sat;

    public static final WeekDay Sun;

    static {};

    public static void printDay(int);

    public java.lang.String getDay();

    public static WeekDay[] values();

    public static WeekDay valueOf(java.lang.String);

}


所以實際上Enum類型就是以Java類來實現(xiàn)的,沒有什么新的特點,只不過java編譯器幫我們做了語法的解析和編譯。完全也可以自己實現(xiàn)。但是既然有這樣方便一個東西,當然會去用了。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
說說Java中的枚舉(一)
Java學(xué)習(xí)_Java核心類
枚舉類型的聲明及應(yīng)用
Java枚舉(enum)詳解:Java聲明枚舉類型、枚舉(enum)類、EnumMap 與 EnumSet
Java開發(fā)筆記 — 理解枚舉
java enum(枚舉)使用詳解 + 總結(jié)AAA
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服