Java enum 里有code,value,type 三个字段,根据type 来获取enum里对相应的的enum值怎么写
时间: 2024-05-02 18:19:54 浏览: 57
enum 类型的变量本质上是常量对象,可以通过对其进行调用来获取其值。如果需要根据type获取相应的enum值,可以使用如下代码:
```
public enum ExampleEnum {
ITEM1("1", "value1", "type1"),
ITEM2("2", "value2", "type2"),
ITEM3("3", "value3", "type1");
private String code;
private String value;
private String type;
private ExampleEnum(String code, String value, String type) {
this.code = code;
this.value = value;
this.type = type;
}
public static ExampleEnum getValueByType(String type) {
for (ExampleEnum exampleEnum : values()) {
if (exampleEnum.type.equals(type)) {
return exampleEnum;
}
}
return null;
}
// getter/setter省略
}
```
这里定义了一个枚举类型,其中每个枚举值都拥有自己的code、value、type三个字段。在 ExampleEnum 类中定义了一个名为 getValueByType 的静态方法,通过传入type参数来获取相应的enum值。
调用方式如下:
```
ExampleEnum exampleEnum = ExampleEnum.getValueByType("type1");
if (exampleEnum != null) {
System.out.println(exampleEnum.getValue()); // 输出 value1
}
```
阅读全文