enum 有name 和value两个参数 通过value得到name值
时间: 2024-09-19 09:06:27 浏览: 30
枚举(enum)是 Java 中的一种特殊数据类型,它允许程序员创建一组有限的常量。在定义 enum 类型时,你可以为每个枚举成员提供两个重要的元素:名称(name)和对应的值(value)。例如:
```java
public enum Color {
RED(1), GREEN(2), BLUE(3);
// 枚举成员私有变量,通常代表一个整数值
private int value;
// 构造函数,接受并存储值
Color(int value) {
this.value = value;
}
// 获取 name 的值
public String getName() {
return name();
}
// 获取 value
public int getValue() {
return value;
}
// 通过 value 获取相应的枚举实例,如果不存在则抛出异常
public static Color fromValue(int value) {
for (Color color : Color.values()) {
if (color.getValue() == value) {
return color;
}
}
throw new IllegalArgumentException("Invalid value for color");
}
}
```
在这个例子中,`RED`, `GREEN`, 和 `BLUE` 分别表示颜色,它们都有对应的整数值。你可以通过枚举的 `getValue()` 方法获取其值,或者通过 `getName()` 方法获取其名称。同时,`fromValue()` 方法用于根据给定的值查找相应的枚举实例。
阅读全文