您的位置:首页 > 编程语言 > Java开发

java枚举类型

2015-07-31 10:43 661 查看
1.定义一个Color的枚举类型

enum Color{
RED,GREEN,BLUE;

}

2.取出一个枚举类型

public static void main(String[] args) {
Color c=Color.RED;
System.out.println(c);

}

打印结果为

RED

3.使用foreach输出枚举内容

for(Color c1:Color.values()){
System.out.println(c1);
}

打印结果为:

RED
GREEN
BLUE

4.使用switch进行判断

switch(color){
case RED:{
System.out.println("红颜色");
break;
}
case GREEN:{
System.out.println("绿颜色");
break;
}
case BLUE:{
System.out.println("蓝颜色");
break;
}
}

运行结果为:

红颜色

绿颜色

蓝颜色

5.取得枚举信息

for(Color c:Color.values()){
System.out.println(c.ordinal()
+"-->"+c.name()+c.getName());
}

打印结果为:

0-->RED
1-->GREEN
2-->BLUE

从结果中可以看出Enum类自动为每个枚举类型自动编号,而且下标从0开始。

6.通过构造方法为每个枚举对象的属性赋值

每个枚举类中都有若干个对象,当然每个枚举对象也可以包含若干个属性,可以通过构造方法为每个属性赋值

代码示例:

enum Color{
RED("红色"),GREEN("绿色"),BLUE("蓝色");
private Color(String name) {
this.setName(name);
}
private String name;
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}

}

public class ConstructorEnum {
public static void main(String[] args) {
for(Color c:Color.values()){
System.out.println(c.ordinal()
+"-->"+c.name()+c.getName());
}
}

}

以上代码在定义的Color类中设置了一个name属性,并且通过构造方法设置name属性的内容,因为Color中已经明确的写出了一个有参数的构造方法,所以在声明枚举时就必须调用这个构造方法,这样在定义枚举内容时就必须使用如下的语句形式:

RED("红色"),GREEN("绿色"),BLUE("蓝色");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java enum