java枚举类型enum的使用实例

java枚举类型enum的使用

        java中定义常量有两种方法:final关键字和enum枚举。Java中的枚举类型采用关键字enum来定义,从jdk1.5才有的新类型,所有的枚举类型都是继承自Enum类型。要了解枚举类型,建议大家先打开jdk中的Enum类简单读一下,这个类里面定义了很多protected方法,比如构造函数,如果要使用这些方法我们可以把枚举类型定义到当前类中。每个枚举类型,都有自己的名字和顺序,当我们输出一个枚举类型的时候,会输入枚举类型的name,具体可以参考下面的例子。


public enum OperationType {

    ADD_KEYWORD("add_keyword@resource", "KEYWORD"),
    ADD_START_KEYWORD("add_start_keyword@resource", "KEYWORD"),
    ADD_STOP_KEYWORD("add_stop_keyword@resource", "KEYWORD"),
    DELETE_KEYWORD("delete_keyword@resource", "KEYWORD"),
    ADD_REC_TO_RECYCLE("add_rec_to_recycle@resource", "KEYWORD"),
    STOP_KEYWORD("stop_keyword@resource", "KEYWORD"),
    STOP_ALL_KEYWORD("stop_all_keyword@resource", "KEYWORD"),
    START_KEYWORD("start_keyword@resource", "KEYWORD"),
    START_ALL_KEYWORD("start_all_keyword@resource", "KEYWORD"),
    BID_KEYWORD("bid_keyword@resource", "KEYWORD"),
    MODIFY_BID_KEYWORD("modify_bid_keyword@resource", "KEYWORD"),
    MODIFY_ADD_KEYWORD("modify_add_keyword@resource", "KEYWORD"),
    MODIFY_SUB_KEYWORD("modify_sub_keyword@resource", "KEYWORD"),
    MODIFY_KEYWORD_TAG("modify_keyword_tag@resource", "KEYWORD"),
    CANCEL_KEYWORD_TAG("cancel_keyword_tag@resource", "KEYWORD"),
    SET_PREFERENTIAL_PRODUCT("set_preferential_product@resource", "KEYWORD"),
    CANCEL_PREFERENTIAL_PRODUCT("cancel_preferential_product@resource", "KEYWORD"),
    SET_ADMATCH("set_admatch@resource", "KEYWORD"),
    CANCEL_ADMATCH("cancel_admatch@resource", "KEYWORD"),
    MODIFY_COST_LIMIT("modify_cost_limit@resource", "ACCOUNT"),
    MODIFY_BALANCE_ALERT_AMOUNT("modify_balance_alert_amount@resource", "ACCOUNT"),
    MODIFY_BALANCE_ALERT_EMAIL("modify_balance_alert_email@resource", "ACCOUNT"),
    MODIFY_BALANCE_ALERT_PHONE("modify_balance_alert_phone@resource", "ACCOUNT"),
    ACCEPT_AGREEMENT("accept_agreement@resource", "ACCOUNT"),
    START_ACCOUNTS_TATUS("start_account_status@resource", "ACCOUNT"),
    STOP_ACCOUNT_STATUS("stop_account_status@resource", "ACCOUNT"),
    SETTING_ACCOUNT_LANGUAGE("setting_account_language@resource", "ACCOUNT"),
    CANCEL_ACCOUNT_LANGUAGE("cancel_account_language@resource", "ACCOUNT"),
    ALLOW_RECOMMEND_KEYWORD("allow_recommend_keyword@resource", "ACCOUNT"),
    DONT_ALLOW_RECOMMEND_KEYWORD("dont_allow_recommend_keyword@resource", "ACCOUNT"),
    UNFREEZE_CUST("unfreeze_cust@resource", "ACCOUNT"),
    ADD_OFFER("add_offer@resource", "PRODUCT"),
    CLEAN_PRODUCT("clean_product@resource", "PRODUCT"),
    DELETE_OFFER("delete_offer@resource", "PRODUCT"),
    ADD_ALL_OFFER("add_all_offer@resource", "PRODUCT"),
    DELETE_ALL_OFFER("delete_all_offer@resource", "PRODUCT"),
    ADD_BEST_MATCH_OFFER("add_best_match_offer@resource", "PRODUCT"),
    CREAT_TAG("create_tag@resource", "TAG"),
    MODIFY_TAG_NAME("modify_tag_name@resource", "TAG"),
    DELETE_TAG("delete_tag@resource", "TAG"),
    INSERT_AUTH_MANAGE("insert_authority@resource", "AUTHORITY"),
    MODIFY_AUTH_MANAGE("modify_authority@resource", "AUTHORITY"),
    CANCEL_AUTH_MANAGE("cancel_authority@resource", "AUTHORITY"),
    START_QUICK_PROMOTION("start_quick_promotion@resource", "QUICKPRROMOTION"),
    STOP_QUICK_PROMOTION("stop_quick_promotion@resource", "QUICKPRROMOTION"),
    UPDATE_QUICK_PRICE("update_quick_price@resource", "QUICKPRROMOTION"),
    
    private OperationType(String resourceKey, String type) {
        this.resourceKey = resourceKey;
        this.type = type;
    }

    private final String resourceKey;
    private final String type;

    public String getResourceKey() {
        return resourceKey;
    }

    public String getType() {
        return type;
    }

    public static OperationType getOperationType(String name) {
        return OperationType.valueOf(name);
    }

}

       上面定义了一个java枚举类型的类,构造函数的两个参数很重要,分别对应枚举实例的两个参数。下面的测试代码,可以明确告诉你如何使用java枚举获取对应的信息。


public class Test {
	public static void main(String[] args) {
	    OperationType operationType = OperationType.getOperationType("ADD_STOP_KEYWORD");
            System.out.println("operationType.getType():" + operationType.getType());
            System.out.println("operationType.getResourceKey():" + operationType.getResourceKey());
	}
}


上例的输出结果如下:


<strong>operationType.getType():KEYWORD
operationType.getResourceKey():add_stop_keyword@resource</strong>


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值