java知识点十:枚举

枚举

一.枚举概念与定义

enum的全称enumeration,是JDK1.5中引入的新特性,存放在java,lang包中

1.定义一个无属性的Enum

public enum EnumTest{
 MON,TUE,WED,THU,FRI,SAT,SUN;
}

这段代码实际调用了七次Enum(String name,int ordinal):

new Enum<EnumTest>("MON",0);

new Enum<EnumTest>("TUE",0);

2.自定义属性的Enum

package com.jiangbei.test.enumtest;

/**
 * 颜色枚举类
 */
public enum ColorEnum {
    RED("red", "红色"),GREEN("green", "绿色"),BLUE("blue", "蓝色");

    private String name;
    private String desc;

    ColorEnum(String name, String desc){
        this.name = name;
        this.desc = desc;
    }
    public static String getDescByName(String name){
        for (ColorEnum c : ColorEnum.values()) {
            if (c.getName().equalsIgnoreCase(name)) {
                return c.getDesc();
            }
        }
        return null;
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDesc() {
        return desc;
    }

    public void setDesc(String desc) {
        this.desc = desc;
    }

    @Override
    public String toString() {
        return "ColorEnum{" +
                "name='" + name + '\'' +
                ", desc='" + desc + '\'' +
                '}';
    }
}

测试:

public static void main(String[] args) {
        String red = ColorEnum.getDescByName("red");
        System.out.println(red);
        ColorEnum blue = ColorEnum.BLUE;
        System.out.println(blue);
    }

常见用法可以参见:http://blog.csdn.net/qq_27093465/article/details/52180865

 

 

猜你喜欢

转载自www.cnblogs.com/python-road/p/10471051.html