什么是枚举?

用来简洁的表示固定的值

TimeUnit

Month月份

DayOfWeek星期

线程状态Thread.State

定义格式

public enum 名称 {

    枚举项1,枚举项2,枚举项3;
}

public enum Season {

SRPING,SUMMER,AUTUMN,WINTER;
}

枚举的特点

所有枚举类都是Enum的子类

// 可以理解为
public enum Season /*extends Enum{}

枚举类名.枚举项名称。访问枚举项

System.out.println(Season.SPRING);

System.out.println(Season.SPRING);

System.out.println(Season.SPRING);

System.out.println(Season.WINTER);

【核心】每一个枚举项其实就是该枚举的一个对象

public enum Season {
 public static final SRPING = new Season();
 public static final SUMMER = new Season();
 public static final AUTUMN = new Season();
 public static final WINTER = new Season();
}

枚举类的第一行上必须是枚举项。最后一个枚举项后的分号不要省略

public enum Season {

    SRPING,
    SUMMER,
     AUTUMN,
    WINTER;

}

枚举类也可以有抽象方法,但是枚举项必须重写该方法

public abstract void show();

SPRING("春"){
    @Override
    public void show() {

    }

// 可以理解为
/*public static final */SRPING/* = new Season*/("春"){

 @Override
    public void show() {

    }
};

枚举的方法

valueOf(Class<T> type,String name) 调用者 ,父类 Enum

values() 调用者,枚举类

其他方法枚举项直接调用的

String name()获取枚举项的名称
int ordinal()返回枚举项在枚举类中的索引值
int compareTo(E  o)比较两个枚举项,返回的是索引值的差值
    String toString()返回枚举常量的名称
static <T> T  valueOf(Class<T> type,String  name)获取指定枚举类中的指定名称的枚举值
values()获得所有的枚举项

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值