前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java枚举类型校验

Java枚举类型校验

作者头像
java干货
发布2021-02-17 17:27:37
1.3K0
发布2021-02-17 17:27:37
举报
文章被收录于专栏:java干货

原代码

代码语言:javascript
复制
package com.merryyou.enmu;

/**
 *
 * Created on 2016/10/31 0031.
 *
 * @author zlf
 * @since 1.0
 */
public class OriDemo {
    public static final String ADD = "add";
    public static final String INSERT = "insert";
    public static final String UPDATE = "update";
    public static final String DEL = "deltete";

    public static void main(String[] args) {
//        test("add");
        test("111");//参数不符合要求的时候也可以执行
    }

    public static void test(String str){
        switch (str){
            case ADD:
                System.out.println("add");
                break;
            case INSERT:
                System.out.println("insert");
                break;
            case UPDATE:
                System.out.println("update");
                break;
            case DEL:
                System.out.println("del");
                break;
            default:
                System.out.println("参数异常");
        }
    }
}

使用枚举之后

代码语言:javascript
复制
package com.merryyou.enmu;

import java.util.HashMap;
import java.util.Map;

/**
 * Created on 2016/10/31 0031.
 *
 * @author zlf
 * @since 1.0
 */
public enum Command {
    ADD("add"),
    INSERT("insert"),
    UPDATE("update"),
    DEL("delete");
    private String commandStr;
    Command(String str) {
        this.commandStr = str;
    }
    private static final Map<String, Command> stringToCommand = new HashMap<String, Command>();

    static {
        for(Command item : values()){
            stringToCommand.put(item.toString(), item);
        }
    }

    public static Command fromString(String commandStr){
        return stringToCommand.get(commandStr);
    }

    @Override
    public String toString() {
        return this.commandStr;
    }
}
代码语言:javascript
复制
package com.merryyou.enmu;

/**
 * Created on 2016/10/31 0031.
 *
 * @author zlf
 * @since 1.0
 */
public class CurDemo {
    public static void main(String[] args) {
        test(Command.ADD);
    }
    public static void test(Command command) {
        switch (command){
            case ADD:
                System.out.println("add");
                break;
            case INSERT:
                System.out.println("insert");
                break;
            case UPDATE:
                System.out.println("update");
                break;
            case DEL:
                System.out.println("del");
                break;
        }
    }

}

参考链接

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016/10/31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档