java 枚举三个参数值通过两个值获取另一个值
时间: 2023-08-13 13:02:24 浏览: 23
假设你有一个枚举类型如下:
```java
public enum MyEnum {
A(1, 2),
B(3, 4),
C(5, 6);
private final int value1;
private final int value2;
MyEnum(int value1, int value2) {
this.value1 = value1;
this.value2 = value2;
}
public int getValue1() {
return value1;
}
public int getValue2() {
return value2;
}
}
```
其中每个枚举常量都有两个值 `value1` 和 `value2`。要通过其中的两个值获取另一个值,可以写一个静态方法,如下所示:
```java
public static int getValue3(int value1, int value2) {
for (MyEnum e : MyEnum.values()) {
if (e.getValue1() == value1 && e.getValue2() == value2) {
// 找到对应的枚举常量,返回其 value3
return e.getValue3();
}
}
// 没有找到对应的枚举常量,返回默认值或抛出异常
return -1;
}
```
这个方法遍历枚举类型中的每个常量,找到与给定的 `value1` 和 `value2` 相等的常量,然后返回其 `value3` 值。如果没有找到对应的常量,可以返回一个默认值或抛出异常。
相关推荐


















