枚举类定义如下:
1 package demo.java.jiangkd.enum_.demo; 2 3 import lombok.Getter; 4 5 /** 6 * 状态 7 * 8 * @author jiangkd 9 * @date 2020/06/04 10 */ 11 @Getter 12 public enum Status { 13 14 SUCCESS(1, "执行成功"), FAILED(2, "执行失败"); 15 16 private Integer code; 17 private String desc; 18 19 private Status(int code, String desc) { 20 this.code = code; 21 this.desc = desc; 22 } 23 24 public static String getDesc(Integer code) { 25 // 26 Status[] values = Status.values(); 27 for (Status s : values) { 28 if (s.getCode() == code) { 29 return s.getDesc(); 30 } 31 } 32 return null; 33 } 34 35 public static void main(String[] args) { 36 // 37 String desc = Status.getDesc(1); 38 System.out.println(desc); // 执行成功 39 40 desc = Status.getDesc(2); 41 System.out.println(desc); // 执行失败 42 43 desc = Status.getDesc(3); 44 System.out.println(desc); // null 45 } 46 }
使用正如main方法中的测试, 这种方式主要用于我们在操作数据库的时候,通常使用数字保存到数据库中,但是在界面上显示的时候,需要展示其中文意思,那么我们就可以通过这种方式, 可能这里使用的示例(更像是前后台交互使用)不是那么的合理, 但意思和模式很明确
另外这里使用了lombok的注解@Getter, 不明白的请自行百度, 也方便也很简单