全网最清晰的代码-----使用枚举类优化if/else,原来如此简单

例如有以下的场景,通过判断参数判断是何种异常,if的代码逻辑写法如下

public class Test {

	public static void main(String[] args) {
		
		System.out.println(getNum("999"));
	}
	public static String getNum(String number){
		String result;
		if("666".equals(number)){
			result = "时间异常";
		}else if("777".equals(number)){
			result = "事件异常";
		}else if("888".equals(number)){
			result = "物品异常";
		}else if("999".equals(number)){
			result = "设备异常";
		}else if("000".equals(number)){
			result = "操作异常";
		}else{
			result = "未知异常";
		}
		return result;
	}

但是代码过于冗长,现在利用枚举优化以下代码:

定义一个枚举类:

package com.hikvision.test;

//定义某某枚举类
public enum Type {
	timeexception("666","时间异常"),
	thingexception("777","事件异常"),
	personexception("888","人员异常"),
	deviceexception("999","设备异常"),
	optexception("000","操作异常");
	private String code;
	private String desc;
	
	//定义枚举类的构造方法
	private Type(String code,String desc){
		this.code = code;
		this.desc = desc;
	}
	//定义枚举类的获取方法
	public String getCode() {
		return code;
	}
	public String getDesc() {
		return desc;
	}
}

接下来判断就很简单了

package com.hikvision.test;

public class Test {

	public static void main(String[] args) {
		
		System.out.println(getNumByEnum("999"));
	}
	public static String getNumByEnum(String number){
		//循环枚举类
		for(Type t:Type.values()){
			 if(number!=null && number.equals(t.getCode())){
				return t.getDesc();
			 }
	     }
		return "未知异常";
	}
}

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值