在没有使用枚举之前,我们可能会这样来定义变量:
private static final int GIRL = 0;
private static final int BOY= 1;
这样一种实现的方式,看似好像很清晰,但是如果类型一多,类型的值就较难管理,而且在判断不同类型时,有较多的丑陋的代码,代码自然不够优雅。
下面来看下如何使用枚举。
可以这样来定义:
public enum GenderType {
Girl, Boy
}
利用枚举传递值:
public void updateGrade(long userId,GenderType gender);
这样传递的好处是,可以是参数的传入一定是正确的,是真实存在的类型值。
递归枚举:
for (GenderType g : GenderType.values()) {
System.out.println(g.name()); //得到枚举的名字
System.out.println(g.ordinal()); //得到枚举的序号
}
枚举和switch:
for (GenderType g : GenderType.values()) {
System.out.println(g.name());
System.out.println(g.ordinal());
switch(g){
case Girl:
break;
case Man:
break;
}
}