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() 方法就能很方便的使用枚举了。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

01-29 10:48
查看更多