枚举类是在java 5后新增的,可以用于封装常量,并且还可以为常量的使用提供一些方法。
定义枚举类的语法:
public enum EnumName{
//必须放在第一行
成员1(A,B...),成员2(A,B...),成员3(A,B....)........;//A,B可以没有 private Type A;
private Type B;
......
private EnumName(Type a,Type b.......)
{ A=a;
B=b;
.....
}
关于A,B.....的get和set方法
}
获得枚举类中某个枚举成员:
枚举类名.枚举成员;
通过: 枚举类名.values() 可以获得该枚举类中的所有枚举成员;如
enum AA{
A,B,C;
}
若要遍历输出所有的元素,则:
for( AA s : AA.values() )
System.out.println(s);
结果为:
A
B
C
编写一个Wheher.java类,完整代码如下:
enum AA {
YES(2),NO(4);
private int value;
private AA(int i) //也可以省略private
{
value=i;
}
public int getValue() {
return value;
} public void setValue(int value) {
this.value = value;
} }
public class Wheher{
public static void main(String args[])
{
System.out.println("输出枚举类中的成员NO的值----"+AA.NO); System.out.println("\n---调用函数isYes()--");
System.out.println(isYes(AA.YES));
System.out.println(isYes(AA.NO)+"\n"); System.out.println("查看枚举常量所代替的值---"+AA.YES.getValue()); //设置枚举常量的值
AA.YES.setValue(25);
System.out.println("\n改变后Yes的值为----"+AA.YES.getValue()); }
public static boolean isYes(AA a)
{
if(AA.YES.equals(a))
return true;
else return false;
}
}
运行结果为:
枚举类的基本原理请参考:http://www.cnblogs.com/sister/p/4700702.html