关于Java中的 Enum.values() 理论知识参考: java 中枚举类enum的values()方法的详解
我根据 “Java中枚举类enum的values()方法的详解” 自己自写的一个Demo。 这个Demo只有2个Java文件。 一个 EnumTest.java 文件、一个 EnumMain.java 文件 。
EnumTest.java文件内容如下:
package com.example.demo.Enum;
public enum EnumTest {
ACTIVE("激活", 100),
INACTIVE("冻结", 101),
TEST("测试...", 102);
/* 描述 */
private String desc;
/* 枚举类 */
private int value;
public static EnumTest getEnum(int value) {
EnumTest resultEnum = null;
EnumTest[] enumArray = EnumTest.values();
for (int i = 0; i < enumArray.length; i++) {
if (enumArray[i].getValue() == value) {
resultEnum = enumArray[i];
break;
}
}
return resultEnum;
}
/**
* 测试函数 -- 应该不会用到,无意义。 2018/08/16
* @param desc
*/
private EnumTest(String desc) {
this.desc = desc;
}
/**
* 全参构造函数
* @param desc
* @param value
*/
private EnumTest(String desc, int value) {
this.desc = desc;
this.value = value;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
}
EnumMain.java文件内容如下:
package com.example.demo.Enum;
public class EnumMain {
public static void main(String[] args) {
EnumTest et = null;
et = EnumTest.getEnum(101);
System.out.println("输出枚举类的值为:" + et + "\n"
+ "输出枚举类值的'desc'值为:" + et.getDesc() + "\n"
+ "输出枚举类值的'value'值为:" + et.getValue());
}
}
运行结果如下:
输出枚举类的值为:INACTIVE
输出枚举类值的'desc'值为:冻结
输出枚举类值的'value'值为:101
祝各位好运,Lucky dog。