如何使用枚举类:
通常的方式是直接定义一个枚举类,但是如果想一个类定义多个枚举类,可以考虑将枚举类定义为内部类来实现例如:
public class BabyConstants {
public static final int BABY_SEX_BOY = 1;
public static final int BABY_SEX_GIRL = 2;
public static final int BABY_SEX_BOYANDGIRL = 3;
public enum BabySex{
BOY(1, "男"),
GIRL(2, "女");
BabySex(int value, String meaning) {
this.value = value;
this.meaning = meaning;
}
private final int value;
private final String meaning;
public int getValue() {
return this.value;
}
public String getMeaning() {
return this.meaning;
}
public static BabySex valueOf(int value) {
for (BabySex e : BabySex.values()) {
if (e.getValue() == value) {
return e;
}
}
return null;
}
}
public enum Constellation{
BAIYANGZUO(1, "白羊座"),
JINNIUZUO(2, "金牛座"),
SHUANGZIZUO(3, "双子座"),
JUXIEZUO(4,"巨蟹座"),
SHIZIZUO(5,"狮子座"),
CHUNVZUO(6,"处女座"),
TIANCHENGZUO(7,"天秤座"),
TIANXIEZUO(8,"天蝎座"),
SHESHOUZUO(9,"射手座"),
MOJIEZUO(10,"魔羯座"),
SHUIPINGZUO(11,"水瓶座"),
SHUANGYUZUO(12,"双鱼座");
Constellation(int value, String meaning) {
this.value = value;
this.meaning = meaning;
}
private final int value;
private final String meaning;
public int getValue() {
return this.value;
}
public String getMeaning() {
return this.meaning;
}
public static Constellation valueOf(int value) {
for (Constellation e : Constellation.values()) {
if (e.getValue() == value) {
return e;
}
}
return null;
}
}
public enum Animal {
SHU(1, "鼠"),
NIU(2, "牛"),
HU(3, "虎"),
TU(4,"兔"),
LONG(5,"龙"),
SHE(6,"蛇"),
MA(7,"马"),
YANG(8,"羊"),
HOU(9,"猴"),
JI(10,"鸡"),
GOU(11,"狗"),
ZHU(12,"猪");
Animal(int value, String meaning) {
this.value = value;
this.meaning = meaning;
}
private final int value;
private final String meaning;
public int getValue() {
return this.value;
}
public String getMeaning() {
return this.meaning;
}
public static Animal valueOf(int value) {
for (Animal e : Animal.values()) {
if (e.getValue() == value) {
return e;
}
}
return null;
}
}
}
本段代码中既有不可变常量定义的性别,也有通过枚举定义的性别,就平时使用来说还是推荐使用枚举类型
分享到:
相关推荐
非常有用的枚举类型使用例子,简化了数据采集通道的定义。
演示如何操作Delphi 的枚举类型。 1. 包含源代码; 2. 包含执行程序 3. 演示如下函数如何使用:GetEnumName、GetEnumProp、GetEnumValue、SetEnumProp 4. 非常简单,一看就会。
主要介绍了Java的枚举类型使用方法详解,从背景、到定义、特点、使用方式做个简单了解,感兴趣的小伙伴们可以参考一下
ActionScript3.0 枚举类型的使用 ActionScript3.0 中创建枚举类型
thinkPHP调用枚举类型,里面根据参数不同返回值不同,初步只封装了input(radio、check)、td、select等。
如果要在 QML使用 C++中定义的类型,有些数据类型是是可以直接使用的,如常见的 int,但是还有一些相对特殊的类型就需要做些特定的操作才可以使用了。 博客地址:...
C# 枚举类型的实例说明,描述了枚举类型的主要使用方法
枚举类型定义与变量声明定义的不同方法,使用vc++ 6.0编写
一个关于JAVA枚举类型的MHT文件,包含JAVA枚举类型的用法,以及JDK版本的问题。
详细说明了枚举类型,枚举类型是JDK5.0的新特征。Sun引进了一个全新的关键字enum来定义一个枚举类。
5-2 枚举类型变量的赋值和使用 枚举类型在使用中有以下规定。 ① 枚举值是常量,不是变量,不能在程序中用赋值语句再对它赋值。例如,对枚举weekday的元素再作以下赋值:sun=5;mon=2;sun=mon;都是错误的。 ② ...
java枚举类型的说说明,详细阐述了枚举类型的使用和注意事项
近用到枚举,由于枚举变量比较多且存在一定的分组分类的关系,所以想能比较清晰的维护这些变量。今晚有空,简单研究了一下,分享出来,供大家讨论。 可供考虑的分类方式 /** * 枚举接口 * * @...
本文档为自己手动书写样例,涉及到java项目中经常用到的枚举类型,使用枚举类型有利于快速引起区分对应字典键值对
java枚举类型的定义使用介绍,还有示例。
本项目为mybatis实战二之枚举类型,里面有简单的demo,适合初学者下载运行,能对mybatis的typehandler有一个初始的认识和运用
答:如果一个变量只有几种可能的值,那么就可以定义为枚举类型,比如:性别只有男和女,那么就可以将性别定义为一种枚举类型,其中男和女就是性别所包含的变量。所谓”枚举”是指将变量的值一一列举出来,变量的值...
之前使用ST官方的库以及网络的资料,完成了使用USB HID类进行STM32和PC机的通讯。由于其他原因并没有深入的分析,虽然实现了功能,但是关于USB设备的枚举,以及具体的通讯方式都没有清晰的概念,所以现在回头重新...