Java中的枚举类怎么获取其值
时间: 2023-11-22 07:54:42 浏览: 42
Java中的枚举类可以通过以下方式获取其值:
1. 获取所有的枚举值:
```
YourEnum[] values = YourEnum.values();
```
这个方法返回一个包含所有枚举值的数组。
2. 获取单个枚举值:
```
YourEnum value = YourEnum.valueOf("ENUM_VALUE_NAME");
```
这个方法根据枚举值的名称返回相应的枚举值。需要注意的是,如果传入的名称不存在,会抛出IllegalArgumentException异常。
例如,如果有一个名为Color的枚举类,包含RED、GREEN和BLUE三个枚举值,那么可以通过以下方式获取这些枚举值:
```
enum Color {
RED, GREEN, BLUE;
}
Color[] values = Color.values(); //获取所有的枚举值
Color red = Color.valueOf("RED"); //获取单个枚举值
```
相关问题
java获取枚举类所有值
可以使用Map的values()方法获取所有的value值,返回一个Collection集合,然后可以通过遍历集合来获取每一个value值。示例代码如下:
```
Map<String, Integer> map = new HashMap<>();
map.put("a", 1);
map.put("b", 2);
map.put("c", 3);
Collection<Integer> values = map.values();
for (Integer value : values) {
System.out.println(value);
}
```
java根据枚举值获取枚举内容
根据提供的两个引用,可以看出这是在Java中使用枚举类型的两种不同方法来获取枚举内容。下面是两种方法的详细解释和示例代码:
1.使用EnumUtil.getEnumObject()方法获取枚举内容
这种方法需要使用一个名为EnumUtil的工具类,该类提供了一个getEnumObject()方法,该方法接受两个参数:枚举类型和一个Lambda表达式,该表达式用于比较枚举类型中的某个属性是否与提供的值相等。如果找到匹配的枚举,则返回该枚举对象,否则返回null。
```java
Optional m1 = EnumUtil.getEnumObject(PurchaseDemandEnum.class, e -> e.getCode().equals(code));
```
其中,PurchaseDemandEnum是枚举类型的名称,getCode()是枚举类型中的一个方法,用于获取枚举类型中的code属性的值,code是枚举类型中的一个属性,表示枚举类型的值。Lambda表达式e -> e.getCode().equals(code)用于比较枚举类型中的code属性是否与提供的code值相等。
2.使用枚举类型中的方法获取枚举内容
这种方法需要在枚举类型中定义一个方法,该方法接受一个参数,用于比较枚举类型中的某个属性是否与提供的值相等。如果找到匹配的枚举,则返回该枚举对象,否则返回null。
```java
Integer codeByName = PurchaseDemandEnum.getCodeByName(name);
```
其中,PurchaseDemandEnum是枚举类型的名称,getCodeByName()是枚举类型中的一个方法,用于获取枚举类型中的name属性的值,name是枚举类型中的一个属性,表示枚举类型的名称。
相关推荐
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)