通用枚举类

简介: 本文介绍了Java中枚举类的两种常见用法。场景一展示了一个包含类型值的枚举`OperatorType`,通过构造函数设置类型并在`enumOf`方法中按值查找枚举常量。场景二的`EnableCheck`枚举使用`ordinal()`方法获取枚举常量的序号(默认从0开始),并转化为字符串返回,提供了`getValue()`方法以获取序号的字符串表示。

在项目中有时需要用到枚举类,下面就简单介绍下常用的几种写法

1、场景一

  • 调用:OperatorType.USER.getType()
public enum OperatorType {
   

    USER("1"),

    ROLE("2"),

    CUSTOMER("3");

    private final String type;

    OperatorType(String type) {
   
        this.type = type;
    }

    public String getType() {
   
        return type;
    }

    public static OperatorType enumOf(String type) {
   
        for (OperatorType operatorType : values()) {
   
            if (operatorType.getType().equals(type)) {
   
                return operatorType;
            }
        }
        return null;
    }
}

2、场景二

public enum EnableCheck {
   

    DISABLE,

    ENABLE;

    public String getValue() {
   
        return String.valueOf(this.ordinal());
    }
}
  • ordinal() 方法是Enum类中的一个方法,用于返回枚举常量的序数,即它在枚举声明中的位置索引。默认情况下,第一个枚举常量的序数为 0,第二个为 1。

  • this.ordinal() 返回当前枚举常量的序数,然后通过 String.valueOf() 方法将其转换为字符串。getValue() 方法返回的是当前枚举常量在声明中的位置索引的字符串表示。

目录
相关文章
字符串通用类
TMyString = class(TObject)   private     FStrBeginTran: string;     FStrEndTran: string;   protected     function GetData(myData: TMyField): st...
683 0
|
Java
枚举类工具
枚举类是程序中常用的一种类型,当经常面对说明与标识混乱的情况。在此记录一个枚举类的写法,方便标识与说明的绑定 基类: import java.util.ArrayList; import java.util.
960 0
实战小技巧15:如何判断类为基础类型or基础类型的包装类
判断一个类是否为基础类型属于常规操作了,一般我们遇到这种case,要怎么处理呢? 一个一个的if/else判断? 还是其他的操作姿势?
1023 0
Java避坑指南:POJO类属性建议一律为包装类型,而且不要设置任何属性默认值
Java避坑指南:POJO类属性建议一律为包装类型,而且不要设置任何属性默认值
Java避坑指南:POJO类属性建议一律为包装类型,而且不要设置任何属性默认值
泛型-使用泛型结合工厂方法实现单例模式,以支持类型自定义
泛型-使用泛型结合工厂方法实现单例模式,以支持类型自定义
|
Java 索引
枚举类 - 自定义枚举类与使用enum关键字
枚举类 - 自定义枚举类与使用enum关键字
156 0