参考资料
常用枚举
import java.util.ArrayList; import java.util.List; public class CrmCheckInEnum { /** * 状态 1 已完成 2 未完成 */ public enum Status { /** * */ DEL("已删除", 0), YES("已完成", 1), NO("未完成", 2); /** * 设置不可变成员 */ private final String name; private final Integer value; /** * 构造类 * * @param name */ Status(String name, Integer value) { this.name = name; this.value = value; } public String getName() { return name; } public Integer getValue() { return value; } /** * 获取枚举 */ public static Status getEnum(String name) { for (Status temp : Status.values()) { if (temp.getName().equals(name)) { return temp; } } return null; } /** * 获取枚举 */ public static Status getEnum(int value) { for (Status temp : Status.values()) { if (temp.getValue().equals(value)) { return temp; } } return null; } /** * 根据value获取枚举name */ public static String getEnumName(int value) { for (Status temp : Status.values()) { if (temp.getValue().equals(value)) { return temp.getName(); } } return ""; } /** * 根据name获取枚举value */ public static Integer getEnumValue(String name) { for (Status temp : Status.values()) { if (temp.getName().equals(name)) { return temp.getValue(); } } return null; } /** * 获取多个枚举名称 */ public static List<String> getStringNameList(List<Integer> value) { List<String> objects = new ArrayList<>(); if (value == null || value.isEmpty()) { return new ArrayList<>(); } for (Integer integer : value) { for (Status temp : Status.values()) { if (temp.getValue().equals(integer)) { objects.add(temp.getName()); } } } return objects; } /** * 获取多个枚举值 */ public static List<Integer> getValueList(List<String> nameList) { List<Integer> objects = new ArrayList<>(); if (nameList == null || nameList.isEmpty()) { return new ArrayList<>(); } for (String name : nameList) { for (Status temp : Status.values()) { if (temp.getName().equals(name)) { objects.add(temp.getValue()); } } } return objects; } } }