java枚举类-根据key获取value及根据value获取key
程序员文章站
2022-03-24 13:31:04
...
java枚举类-根据key获取value及根据value获取key
创建枚举类,以汽车为例
package com.lw.coodytest.enums;
/**
* @Classname CarTypeEnum
* @Description 汽车类型枚举
* @Author lw
* @Date 2020-01-08 11:32
*/
public enum CarTypeEnum {
CAR_TYPE_BMW("bmw", "宝马"),
CAR_TYPE_BC("bc", "奔驰"),
CAR_TYPE_AUDI("audi", "奥迪");
private String type;
private String desc;
private CarTypeEnum(String type, String desc) {
this.type = type;
this.desc = desc;
}
public static String getValue(String type) {
CarTypeEnum[] carTypeEnums = values();
for (CarTypeEnum carTypeEnum : carTypeEnums) {
if (carTypeEnum.type().equals(type)) {
return carTypeEnum.desc();
}
}
return null;
}
public static String getType(String desc) {
CarTypeEnum[] carTypeEnums = values();
for (CarTypeEnum carTypeEnum : carTypeEnums) {
if (carTypeEnum.desc().equals(desc)) {
return carTypeEnum.type();
}
}
return null;
}
private String type() {
return this.type;
}
private String desc() {
return this.desc;
}
}
测试代码
public static void main(String[] args) {
// 根据类型获取描述
String desc = CarTypeEnum.getValue("bmw");
System.out.println("根据类型获取描述:" + desc);
// 根据描述获取类型
String type = CarTypeEnum.getType("宝马");
System.out.println("根据描述获取类型:" + type);
}
打印结果
下一篇: 秦始皇之前有七十二位封禅的帝王是真的吗?
推荐阅读
-
【Java必修课】通过Value获取Map中的键值Key的四种方法
-
详解JAVA里面获取map的key和value的方法
-
Java Map如何根据key取value以及不指定key取出所有的value
-
java8 stream 操作map根据key或者value排序的实现
-
java根据value获取Map对象的key
-
【Javascript】多层json对象,根据key获取value
-
快速获取json键值对的key名和快速根据value分组
-
【Java必修课】通过Value获取Map中的键值Key的四种方法
-
java枚举类-根据key获取value及根据value获取key
-
C# 获取枚举类型的key和value