咱们以用户状态写一个枚举类java
package com.fengwenyi.learn.java.javaenum; /** * @author Wenyi Feng */ public enum UserStatus { // 登入 LOGIN, // 登出 LOGOUT }
测试类测试
@Test public void simple() { UserStatus userStatus = UserStatus.LOGIN; System.out.format("枚举索引:%s", userStatus.ordinal()); System.out.println(); System.out.format("枚举名称:%s", userStatus.name()); System.out.println(); }
效果this
咱们能够经过反射,或者经过提供的values()方法进行遍历。code
测试代码:orm
/** * 遍历 */ @Test public void all() { System.out.println("方法一:"); Class c = UserStatus.class; for (Object obj : c.getEnumConstants()) { System.out.println(obj); } System.out.println("-----------------"); System.out.println("方法二:"); for (UserStatus userStatus : UserStatus.values()) { System.out.println(userStatus); } }
效果:blog
在写项目的时候,常常会用到枚举类。咱们来写一个例子:索引
package com.fengwenyi.learn.java.javaenum; /** * @author Wenyi Feng */ public enum ReturnCode { ERROR(200, "Error"), SUCCESS(100, "Success") ; private Integer code; private String msg; ReturnCode(Integer code, String msg) { this.code = code; this.msg = msg; } // getter }
测试代码:get
/** * use */ @Test public void use() { ReturnCode returnCode = ReturnCode.SUCCESS; System.out.println("code: " + returnCode.getCode()); System.out.println("msg: " + returnCode.getMsg()); }
效果form