枚举
一.枚举概念与定义
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); }
扫描二维码关注公众号,回复:
5419972 查看本文章
常见用法可以参见:http://blog.csdn.net/qq_27093465/article/details/52180865