java 中枚举类enum的values()方法的详解

java 中枚举类enum的values()方法的详解

前言:

关于枚举,相信使用的已经很普遍了,现在主要写的是枚举中的一个特殊方法,values(), 为什么说特殊呢,因为在Enum 的 API 文档中也找不到这个方法。接下来就看看具体的使用。

理论上此方法可以将枚举类转变为一个枚举类型的数组,因为枚举中没有下标,我们没有办法通过下标来快速找到需要的枚举类,这时候,转变为数组之后,我们就可以通过数组的下标,来找到我们需要的枚举类。接下来就展示代码了。

首先是我们自己的枚举类。

public enum EnumDemoFirst {
RED(1,"hongse"),GREEN(2,"lvse"),YELLOW(3,"huangse");

private int code;

private String msg;

private EnumDemoFirst(int ordinal, String name) {
this.code = ordinal;

this.msg = name;

}

public int getCode() {
return code;

}

public void setCode(int code) {
this.code = code;

}

public String getMsg() {
return msg;

}

public void setMsg(String msg) {
this.msg = msg;

}

}

然后是测试方法,

public class EnumTest {
public static void main(String[] args) {
EnumDemoFirst[] values = EnumDemoFirst.values();

for (EnumDemoFirst enumDemoFirst : values) {
System.out.println(enumDemoFirst + "--" + enumDemoFirst.getCode() + "--" + enumDemoFirst.getMsg());

System.out.println("=============");

}

}

}

此时的输出为,

RED--1--hongse

=============

GREEN--2--lvse

=============

YELLOW--3--huangse

=============

这样的话,通过values() 方法就能很方便的使用枚举了。

经验分享 程序员 微信小程序 职场和发展