美文网首页
Java | enum 枚举类

Java | enum 枚举类

作者: 冯文议 | 来源:发表于2018-06-23 18:04 被阅读8次

    simple

    我们以用户状态写一个枚举类

    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();
    }
    

    效果

    emum simple test

    遍历

    我们可以通过反射,或者通过提供的values()方法进行遍历。

    测试代码:

    /**
     * 遍历
     */
    @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);
        }
    }
    

    效果:

    enum 遍历

    使用

    在写项目的时候,经常会用到枚举类。我们来写一个例子:

    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
        
    }
    

    测试代码:

    /**
     * use
     */
    @Test
    public void use() {
        ReturnCode returnCode = ReturnCode.SUCCESS;
        System.out.println("code: " + returnCode.getCode());
        System.out.println("msg: " + returnCode.getMsg());
    
    }
    

    效果

    enum use

    相关文章

      网友评论

          本文标题:Java | enum 枚举类

          本文链接:https://www.haomeiwen.com/subject/xnhdyftx.html