importjava.util.EnumMap; importjava.util.EnumSet; 公共事件week {
mon { publicstringtolocalestring (} { return '星期一);
}
(,
tues { publicstringtolocalestring (} { return '星期二);
}
(,
web { publicstringtolocalestring (} { return '星期三);
}
(,
thur { publicstringtolocalestring (} { return '周四);
}
(,
fri { publicstringtolocalestring (} { return '星期五);
}
(,
sat { publicstringtolocalestring (} { return )星期六);
}
(,
sun { publicstringtolocalestring (} { return '周日);
}
(; publicabstractstringtolocalestring (; publicstaticvoidmain (string [ ] args (for (weekw : week.values ) ) ) ) ) ) ) ) ) )。
system.out.println (w.tolocalestring () );
}
testEnumSet (;
testEnumMap (;
testTraversalEnum (
}/* *演示如何使用枚举集。 enumset是抽象类,用于获取类型的枚举类型内容
*
可以使用allOf方法
*
* values (因为方法是编译器插入到enum定义中的静态方法。
*如果* kwdxd将enum实例升级到父类的enum,则values ()将无法访问。
*解决方法: Class包含getEnumConstants ()方法。
*因此,从Class对象到所有Enum实例) /
私有静态语音提示(
enumsetcurrenumset=enum set.all of (week.class ); weekalightsetelement :当前设置{
System.out.println ('当前EnumSet的数据是' aLightSetElement );
}
;
week [ ] weeks=week.class.getenumconstants (;
(/) **
*演示EnumMap的使用,EnumMap与HashMap的使用大致相同,但key是枚举类型*/
私有静态视频标题
enummapcurrenummap=newenummap (week.class ); //1 .定义枚举图对象的演示。 enummap对象的构造函数需要传递参数,缺省类型为key类
currenummap.put(week.mon,'星期一1 ' );
currenummap.put(week.tues,'星期二' );
currenummap.put(week.web,'周三' );
currenummap.put(week.thur,'周4 ' );
currenummap.put(week.fri,'星期五);
currenummap.put(week.sat,'星期六);
currenummap.put(week.sun,'星期7 ' ); for(weekalight3360week.values ) ) )
system.out.println ([ key=' alight.name ],value='
currenummap.get(alight ) ');
}
(/) **
*表示枚举类型的遍历*
privatestaticvoidtesttraversalenum {
Light[] allLight=Light.values (; 轻型灯光:全轻型{
System.out.println ('当前灯光name:' aLight.name ) );
System.out.println ('当前灯光ordinal:' aLight.ordinal ) );
System.out.println ('当前灯光: ' aLight );
}
}使用公共枚举{//构造函数传递参数
red(1)、GREEN(3)、YELLOW(2) ) 2; //定义私有变量
私有代码; //构造函数,枚举类型只能是专用的
privatelight(int_ncode ) {this.nCode=_nCode;
}
@OverridepublicString toString () returnstring.valueof ) this.ncode );
}
}
}