枚举
枚举的概述:
枚举是在一定范围内取值,并且这个值必须是枚举类型中的任意一个,并且只能有一个。
特点:
1.必须在规定范围内取值
2.这个值只能取一个
3.这个值可以是规定范围内的任意一个
枚举的本质就是一个Java类
枚举的引入
获取枚举实例的三种方式
public enum Week {
//枚举项(可以使用,但是避免使用中文)
one("星期一"),two("星期二"),Three("星期三"),four("星期四");
//定义属性
private String name;
//构造
public String getName() {
return name;
}
//set get
private Week(String name) {
this.name = name;
}
public void setName(String name) {
this.name = name;
}
}
public class Test2 {
public static void main(String[] args) {
//获取枚举实例的三种方式
//1、通过枚举项获取枚举值
Week week = Week.four;
//输出four
System.out.println(week);
//2、通过指定 枚举项 获取枚举实例valueOf()
Week week2 = Week.valueOf("one");
//输出one
System.out.println(week2);
//3、获取所有的枚举项values()
Week[] week3 = Week.values();
//输出所有枚举
for(Week week4:week3){
System.out.println(week4);
}
//set 赋值 get 取值
Week week4 = Week.four;
week.setName("星期五");
System.out.println(week.getName());
//通过有参构造赋值
Week[] wee3 = Week.values();
for (Week we:wee3){
System.out.println(we.getName());
}
/**
* 配合switch使用
*/
Week[] wee4 = Week.values();
for (Week we:wee4){
switch (we) { //枚举类 变量
case one: //case 直接写 枚举项
System.out.println("当前是:"+we.getName());
break;
case two: //case 直接写 枚举项
System.out.println("当前是:"+we.getName());
break;
case Three: //case 直接写 枚举项
System.out.println("当前是:"+we.getName());
break;
case four: //case 直接写 枚举项
System.out.println("当前是:"+we.getName());
break;
}
}
}
}
来源:CSDN
作者:GetUp KeepMoving
链接:https://blog.csdn.net/qq_41251026/article/details/104185310