现在有一个需求是如果是某个商户下的设备,就做相应的处理,设备有40个怎么简化。
if(number == "num1" || number == "num2"|| number == "num3"|| number == "num4"|| number == "num5"|| number == "num6"|| number == "num7"|| number == "num8"|| number == "num9"|| number == "num10"|| number == "num11"|| number == "num12"|| number == "num13"|| number == "num14"|| number == "num15"|| number == "num16"|| number == "num17"|| number == "num18"|| number == "num19"|| number == "num20"|| number == "num21|| number == "num23"|| number == "num24"|| number == "num25"|| number == "num26...." ){
//做相应处理
}
类似这样的,有没有简单点的办法呢
谢谢大佬门啦
找到解决办法啦,谢谢大家。
下面贴出来
List<String> list = new ArrayList<>();
list.add("XB203039");
list.add("XB203031");
......
if(list.contains("XB20303")){
System.out.println("true");
......
}
Boolean b = false;
for (int i = 1; i < 27; i++)
{
if (number.equals("num" + i)) { b= true; break;}
}
if (b)
...
可以参考楼上方法,补充下,for中27改成40;
for (int i = 1; i < 40; i++)
如果考虑扩展和维护,可以考虑用配置的方式,比如渠道和对应的设置配置在json文件中,如
{
channelId:[number1,number2,number3...number40]
}
你可以用把相同的一批放入一个list里面
if(list.contains("参数"){
//处理
}
这个优化需要具体查看实际问题,比如第一个判断30+,并且是相同处理,那这样条件应该封一下吧?
在这就是这30+的条件都是什么规律
哎呀 解决的思路不错
建立数组,将判断条件放进去,然后以遍历数组的形式判断即可。
像这种设备名称的话推荐卸载枚举类里面,然后你可以在枚举类加一个方法,根据设备名称查询值,如果该方法返回有值说明存在,如果返回为null,说明不存在