现在我们想要判断枚举类CodeEnum中是否包含CODE_2这个值,我们可以使用Java代码来完成这个判断。下面是具体的实现代码: publicclassMain{publicstaticvoidmain(String[]args){CodeEnum[]codes=CodeEnum.values();booleancontainsCode2=false;for(CodeEnumcode:codes){if(code==CodeEnum.CODE_2){containsCode2=true;break...
每个枚举值可以包含一个code和一个value,code用于唯一标识枚举值,value用于表示具体的值。 publicenumMyEnum{FIRST(1,"First Value"),SECOND(2,"Second Value"),THIRD(3,"Third Value");privateintcode;privateStringvalue;MyEnum(intcode,Stringvalue){this.code=code;this.value=value;}// 省略getter方法} 1....
第一种:name-value /** * driver-class-name */publicenumJdbcDriverTypeEnum{/** * mysql */MYSQL("MYSQL","com.mysql.cj.jdbc.Driver");privateStringname;privateStringvalue;JdbcDriverTypeEnum(Stringname,Stringvalue){this.name=name;this.value=value;}publicStringgetName(){returnname;}publicvoidset...
valueOf()方法返回指定字符串值的枚举常量。 传入值查询枚举,就是通过values()方法,返回所以枚举,再遍历全部枚举,只要传入的参数值 跟当前枚举的值跟相同,就返回当前枚举; 2.3、通过传入一个或者多个值,返回对应的枚举 publicCustomTypefind(StringtypeCode){for(CustomTypevalue :CustomType.values()) {if(typeCode...
return code; } TestEnum(String code, String msg) { this.code = code; this.msg = msg; } /* @Description:枚举里面的自定义校验方法 * @author: yilang * @date: 2022/12/6 20:53 * @param: value * @return: boolean */ public boolean isValid(String value) { ...
System.out.println( UserRole.valueOf( "ROLE_ORDER_ADMIN" ) ); System.out.println( UserRole.valueOf( "ROLE_NORMAL" ) ); 除此之外,枚举还可以用于switch语句中,而且意义更加明确: UserRole userRole = UserRole.ROLE_ORDER_ADMIN; switch (userRole) { ...
1.枚举本质上是通过普通的类来实现的,只是编译器为我们进行了处理。 2.每个枚举类型都继承自java.lang.Enum,并自动添加了values和valueOf方法。 3.每个枚举常量是一个静态常量字段,使用内部类实现,该内部类继承了枚举类。 4.所有枚举常量都通过静态代码块来进行初始化,即在类加载期间就初始化。
));// 通过code构建缓存,通过EnumCache.findByValue(StatusEnum.class,"S",null);调用能获取枚举 EnumCache.registerByValue(StatusEnum.class, StatusEnum.values(), StatusEnum::getCode); }}测试类 publicclassTest{public static void main(String [] args){ System.out.println(EnumCache.findByNam...
EnumMap是Map的实现类。它的key为枚举元素,value自定义。EnumMap内部使用数组来实现。 EnumMap的key不允许为null,value可以为null,按照key在enum中的顺序进行保存,非线程安全。《Effective JAVA》中作者建议用EnumMap代替叙述 索引,最好不要用序数来索引数组,而要使用EnumMap。
枚举可以实现接口 enum可以像一般类一样实现接口。 同样是实现上一节中的错误码枚举类,通过实现接口,可以约束它的方法。 代码语言:javascript 复制 publicinterfaceINumberEnum{intgetCode();StringgetDescription();}publicenumErrorCodeEn2implementsINumberEnum{OK(0,"成功"),ERROR_A(100,"错误A"),ERROR_B(200,...