枚举类型是JDK5.0的新特征。Sun引进了一个全新的关键字enum来定义一个枚举类。下面就是一个典型枚举类型的定义:
Java代码
public enum Color{
RED,BLUE,BLACK,YELLOW,GREEN
}
public enum Color{
RED,BLUE,BLACK,YELLOW,GREEN
}
枚举在什么地方适用呢?一条普遍规则是,任何使用常量的地方,例如目前用 switch 代码切换常量的地方。如果只有单独一个值(例如,鞋的最大尺寸,或者笼子中能装猴子的最大数目),则还是把这个任务留给常量吧。但是,如果定义了一组值,而这些值中的任何一个都可以用于特定的数据类型,那么将枚举用在这个地方最适合不过。
例如枚举在类中这样使用是不是方便了许多,假设你开始要定义好多静态的常量:
代码如下:
enum URL{
HOST( "www.google.com" ),
CAPTCHA( "/logo.jpg" ),
ACTION_0( "/promotion.html?locale=en_GB" ),
ACTION_1( "/agreement.html" ),
ACTION_2( "/authkey.html" ),
ACTION_3( "/contactinfo.html" ),
ACTION_4( "/accountname.html" ),
ACTION_5( "/verify.html" ),
ACTION_6( "/completed.html" );
String value;
URL( String value ) {
this.value = value;
}
}
很简单就可以取值:URL.ACTION_3.value,有机会可以试试!