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

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

你可能感兴趣的:(java 中枚举类enum的values()方法的详解)