基本概念:
一直对枚举的知识点和应用场景都不是特别明确,特意花点时间对该知识点进行总结。有不对之处,欢迎指出;
枚举是JDK1.5出的新特性。它是一种特殊数据类型,能够为一个变量定义一组预定义的常量。变量必须等于为其预定义的值之一。同时在JDK1.6中switch也支持枚举进行逻辑判断。
枚举通过enum关键字进行定义。默认都是java.lang.Enum(Enum属于抽象类)的子类。同时枚举类型的每个值都会映射到Enum抽象类中的构造方法。源码如下:
public abstract class Enum<E extends Enum>
implements Comparable, Serializable {
//Enum.java:117-120行
protected Enum(String name, int ordinal) {
this.name = name;
this.ordinal = ordinal;
}
}
1、简单版,代码如下:
/**
- TestEnum.java
- TestEnum 声明枚举
- RED,GREEN,BLUE 预定义的常量
**/
public enum TestEnum {
RED,GREEN,BLUE;
}
//TestMain.java
class TestMain {
public static void main(String[] args){
for(TestEnum test : TestEnum.values()){
System.out.println(test);
}
}