java的枚举是什么,枚举用法java
什么是java枚举?
java 枚举的定义与用法
一、枚举的定义:
枚举是一种特殊的数据类型,之所以特殊,是因为它是一个类类型但是有一些特殊的约束,但是这些约束的存在也让枚举变得简单、安全、方便。枚举类型是使用enum关键字创建的,这意味着所有创建的类型都是java.lang.Enum类的子类(java.lang.Enum是一个抽象类)。枚举符合通用模式Class EnumE extends EnumE,e表示枚举类型的名称。枚举类型的每个值都映射到受保护的枚举(字符串名称,序号)构造函数中,其中每个值的名称都转换为字符串,序号设置指示此设置的创建顺序。
二、枚举的使用:
创建枚举类:EnumTest
公共枚举EnumTest {
//星期一、星期二、星期三、星期四、星期五、星期六
星期一(1),TUE(2),星期三(3),THU(4),星期五(5),星期六(6){
public boolean isRest(){
返回true
}
},
//星期天
孙(0){
public boolean isRest(){
返回true
}
};
private int值;
私有枚举测试(整数值){
this.value=value
}
public int getValue(){
返回值;
}
public boolean isRest(){
返回false
}
}使用EnumTest枚举类:
公共类EnumMain {
公共静态void main(String[] args) {
for(enum test enum test:enum test . values()){
system . out . println(enum test): enum test . getvalue());
}
system . out . println(-);
EnumTest测试=EnumTest。SAT
开关(测试){
案例监控:
System.out.println(今天是星期一);
打破;
凯斯TUE:
System.out.println(今天是星期二);
打破;
案例三:
System.out.println(今天是星期三);
打破;
凯斯THU:
System.out.println(今天是星期四);
打破;
案例星期五:
System.out.println(今天是星期五);
打破;
案例SAT:
System.out.println(今天是星期六);
打破;
孙案:
System.out.println(今天是星期天);
打破;
默认值:
System.out.println(测试);
打破;
}
}
}结果:
周一:1
TUE:2名
星期三:3
THU:4人
星期五:5
星期六:6
孙:0——我是分割线。
今天是星期六。
三、枚举优缺点:
在枚举出现之前,如果想表示一组特定的离散值,通常会使用一些常数。例如:
公共类实体{
公共静态最终int VIDEO=1;//视频
公共静态最终int AUDIO=2;//音频
public static final int TEXT=3;//文本
public static final int IMAGE=4;//图片
private int id
private int类型;
public int getId() {
返回id;
}
public void setId(int id) {
this.id=id
}
public int getType() {
返回类型;
}
公共void setType(int类型){
this.type=type
}四、使用这个常量的方法的缺点:
1.代码可读性差,容易使用。因为setType()方法的参数是int类型的,
2.该类型不安全。用户调用时,必须保证类型完全相同,取值范围要正确。like setType(-1);合法,但是不合理,以后会给程序带来各种问题。
3.耦合度高,扩展性差。如果由于某种原因,需要修改实体类中常量的值,那么在需要更改时却错过了修改,这可不是闹着玩的。
枚举就是为这类问题而生的。它们提供了将一个任意术语与另一个任意术语进行比较的能力。即java枚举的详细内容是什么,更多请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。