java 中的enum(枚舉)

 

Enum類型是java5新增的特性,它是一種新的類型。允許用常量來表示特定的數據片斷,而且全部都以類型安全的形式來表示。可以讓我們拋棄所有舊的 public static final 代碼

1.枚舉的簡單舉例:

package com.wmlp.yongchun;
/**
 *@author come from wmlp's yongchun.chengyc 
 *        2011-7-20 下午11:14:23 
 **/
public class EnumDemo {
	private enum Days{MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY};
	public static void main(String[] args) {
		for(Days day:Days.values()){
			switch (day) {
			case MONDAY:
				System.out.println("這是星期一");
				break;
			case TUESDAY:
				System.out.println("這是星期二");
				break;
			case WEDNESDAY:
				System.out.println("這是星期三");
				break;
			case THURSDAY:
				System.out.println("這是星期四");
				break;
			case FRIDAY:
				System.out.println("這是星期五");
				break;
			case SATURDAY:
				System.out.println("這是星期六");
				break;
			case SUNDAY:
				System.out.println("這是星期日");
				break;
			default:
				break;
			}
		}
	}

}

2.枚舉的複雜舉例

package com.wmlp.yongchun;
/**
 *@author come from wmlp's yongchun.chengyc 
 *        2011-7-20 下午11:42:48 
 **/

public enum MyStatus {

	UNASSIGN(0, "已報名"),
    PASS(1, "審覈通過"),
    REJECT(2, "審覈不通過"),
    ASSIGNED(3, "已報名"),
    HIS(4, "歷史數據"),
    WAITCM(5, "待CM審覈"),
    WAITSEND(6, "待寄樣"),
    COLLECT_MATERIAL(7, "待收集材料(資質審覈)"),
    LACK_MATERIAL(8, "材料不全"),
    INDUSTRY_AUDIT(9, "待行業審覈"),
    WAIT_PAY(10, "待付款"),
    WAIT_AUDIT(11, "待認證"),
    THROUGH_AUDIT(12, "認證通過"),
    THROUGH_AUDIT_FAILED(13, "認證不通過");
    private int    status;
    private String name;
    private MyStatus(int status, String name) {
        this.status = status;
        this.name = name;
    }
    public int getStatus() {
        return status;
    }
    public String getName() {
        return name;
    }
    public static String getName(int status) {
        switch (status) {
            case 0:
                return UNASSIGN.getName();
            case 1:
                return PASS.getName();
            case 2:
                return REJECT.getName();
            case 3:
                return ASSIGNED.getName();
            case 4:
                return HIS.getName();
            case 5:
                return WAITCM.getName();
            case 6:
                return WAITSEND.getName();
            case 7:
                return COLLECT_MATERIAL.getName();
            case 8:
                return LACK_MATERIAL.getName();
            case 9:
                return INDUSTRY_AUDIT.getName();
            case 10:
                return WAIT_PAY.getName();
            case 11:
                return WAIT_AUDIT.getName();
            case 12:
                return THROUGH_AUDIT.getName();
            case 13:
                return THROUGH_AUDIT_FAILED.getName();
            default:
                return " ";
        }
    }
}



發佈了22 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章