public enum MyEnum { @IntValue(1) VALUE1, @IntValue(2) VALUE2, @IntValue(3) VALUE3; public static MyEnum fromInt(int value) { for (MyEnum e : MyEnum.values()) { IntValue annotation = e.getClass().getField(e.name()).getAnnotation(IntValue.class); if (annotation != null && ...
importjava.util.HashMap;importjava.util.Map;enumDay{MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY}publicclassEnumConverter{publicstaticvoidmain(String[]args){int[]days={1,2,3};Map<Integer,Day>map=newHashMap<>();for(Dayday:Day.values()){map.put(day.ordinal(),day);}for(intday:da...
该方法接受一个String类型的参数,返回指定枚举类型中与该参数名称相对应的枚举常量。我们可以通过枚举常量的ordinal值来实现整数到枚举的转换。 下面是一个示例代码: publicenumColor{RED,GREEN,BLUE}publicclassMain{publicstaticvoidmain(String[]args){intcolorValue=1;Colorcolor=Color.values()[colorValue];System.o...
public class MyMain { public static void main(String[] args) { Gender gender = Gender.male; System.out.println(genderhttp://.toString()); //Gender.male枚举常量的名称 System.out.println(gender.getName());//Gender.male的name值 System.out.println(gender.ordinal());//Gender.male枚举常量的...
public class tests { enum TestState{OK, SUCESS} public static void main(String[] args) { // TODO Auto-generated method stub TestState testState = TestState.OK; ///< enum转为int int nState = testState.ordinal(); System.out.println("nState=" + nState); ...
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有...
publicstaticclassExtendEnum {publicstaticintToInt(thisSystem.Enum e) {return(int)e; } } 很可惜Enum类型的实参可以强转为int,但是形参不行,编译器提示无法转换类型,非常令人无语。 不过用个object做中介就能强转了: publicstaticintToInt(thisSystem.Enum e) ...
这至少可以防止一些常见的错误,比如忘记更改大小写或返回值,或者只是查找错误的数值。它也更易于重构(...
当我们想把一个变量x的取值限制在几个预先定义的常量时,我们会怎么做呢?我们可以先定义一些常量值,然后从这些常量中选择赋值给x。下面,让我们假设变量x为currentDay,它的取值包含了星期天到星期五。我们可以在Java中,通过Integer的常量写出下面的代码:public class Main { public static finalintSUNDAY = 0; pu ...