Java枚举的使用-Enum

本文详细介绍了Java中枚举的特性,包括其作为预定义常量集合的性质、与final static常量的区别,以及如何进行基本使用、自定义属性和方法。枚举类默认继承Enum并实现Comparable接口,其构造方法为private,支持使用==进行值比较,并通过values()获取所有枚举值。此外,枚举还能扩展属性和方法,甚至定义抽象方法进行行为定制。
摘要由CSDN通过智能技术生成

是什么

1、java枚举类是一组预定义常量的集合,使用enum关键字声明这个类,常量名称官方建议大写;

2、所有枚举值都是public , static , final的;

3、枚举类默认继承了java.lang.Enum,并且enum类会被final修饰;

4、枚举类默认实现了java.lang.Comparable接口;

5、枚举类覆载了toString方法,当我们调用时直接会返回对应的枚举值;

6、它的构造方法默认为private ,因此不能添加其他的类型修饰符;

7、可直接用==判断两枚举值

8、values()方法返回所有的枚举值

和final static修饰的常量的区别

1、enum可以自定义属性,它可以拓展许多的属性值
2、它还可以拥有各自内部的方法

使用

基本使用

public enum Day {
   
    SUNDAY, MONDAY, TUESDAY, WEDNESDAY,THURSDAY, FRIDAY, SATURDAY 
}

直接通过  Day.SUNDAY .....进行调用

自定义属性使用

public enum AccruedCleanEnum {
   

  SPREAD("1","发票"),OTHER("0","收入"),NON_BUSINESS("2","支出");

    private String index;
    private String name;
    
    //给自定义属性赋值 有自定义属性后必需有带参构造为其赋值
    AccruedCleanEnum(String index, String name) {
   
        this.index = index;
        this.name = name;
    }

    /**
     * 根据属性值index获取enume类型
     * values()是enum自带的一个方法,该方法返回所有的枚举类型
     */
    public static AccruedCleanEnum getType(String index){
   
        for(AccruedCleanEnum accruedCleanEnum : AccruedCleanEnum.values()){
   
            if
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值