Java中枚舉類型的使用

來源:互聯網
上載者:User

標籤:java   enum   basic   

雖然Java中有枚舉類型這種資料類型,但是很少用,其實當用到星期、月份、四季等資料集的時候,無疑,枚舉類型不僅很方便地解決了整數和字串的映射問題,而且極大地提高了程式的可讀性。

下面就用簡單的程式碼來說明這種問題:

1.枚舉類型自動賦值,預設情況下枚舉變數從前到後分別被賦值為0、1、2、3、4、5....然後用迴圈的方式將枚舉變數的名稱和其對應的下標列印出來。

/*  * @author mnmlist  * @date 8/18/2015  * @description of the basic usage of enum  */ enum Color1 { RED,GREEN,BLUE,PINK; private Color1(){}; public static void printAllValues() { for(Color1 color:Color1.values()) { System.out.println("Name:"+color+",Index:"+color.ordinal());//名稱和下標 } } public static void printOneValue() { System.out.println("Name:"+RED+",Index:"+RED.ordinal()); } }public class EnumDemo{public static void main(String[] args){//for(Color color:Color.values())//color.printValue();System.out.println("Print one value:");Color1.printOneValue();System.out.println("Print all values:");Color1.printAllValues();}}

結果:

Print one value:Name:RED,Index:0Print all values:Name:RED,Index:0Name:GREEN,Index:1Name:BLUE,Index:2Name:PINK,Index:3

2.利用建構函式對枚舉變數進行賦值,這樣就可以從隨便某個整型的值開始而不是僅從0開始

 enum Color{RED(3),YELLOW(5),BLUE(9);private int value;private Color(){}private  Color(int value){this.value=value;}public void printValue(){System.out.println("Name:"+this.name()+",Value:"+this.value);//名稱和對應的值}}

public class EnumDemo{public static void main(String[] args){for(Color color:Color.values())color.printValue();}}

結果:

Name:RED,Value:3Name:YELLOW,Value:5Name:BLUE,Value:9












著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

Java中枚舉類型的使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.