java 如图 if里面多null的判断,看着好难受,如何优化代码?

Jordan裔 发布于 2019/12/25 17:22
阅读 4K+
收藏 1

加载中
2
渐行0渐远
渐行0渐远

就我能看到的代码,你可以这么写,性能可能比你的稍慢

if (Stream.of("k1", "k2").anyMatch(k -> null == paramsMap.get(k))) { 
    // do something 
}

 

网瘾少年徐志摩
网瘾少年徐志摩
if (Stream.of("k1", "k2").map(parmas Map::get).anyMatch(Objects::isNull)) { // do something }
8
5
545163777a

下个IDE工具,给他折叠起来,看不到就不难受了

哈哈哈嗝儿
哈哈哈嗝儿
角度刁钻
请叫我七点起床
请叫我七点起床
不当省长,是国家的损失:relaxed:
z
zb89297166
老子他娘的早晚要笑死
不会写代码的小哥哥
膜拜大神
sprouting
sprouting
大佬好见地
下一页
1
tcxu
tcxu

如果楼主认为该代码"难受", 那么可以设 已知调用方法 parmasMap.get(...) 时使用的 7 个字符串参数的数组为:  
String [] par, 
则代码改成:

for (int i = 0; i<par.length;i++)
	if (par[i] == null)
	return  ...; 

 

1
豫华商
豫华商

建议注解实现。

0
Joyce_LNN
Joyce_LNN

实体类接收,用@NotNull注解,如果是spring的话,没有就一个一个if判断呗,简单就是美

0
L
Listener-lsn

aop统一处理,一个数组存要判断的字段名,哪里要判断就加哪里呗。

0
舌尖跳舞
舌尖跳舞

写个工具类

0
码上道
码上道
ObjectUtils.anyNotNull();
StringUtils.isAnyBlank();

可以用用具方法简化一下

0
小象鸭
小象鸭
map.containsValue(null);  //这个函数不香吗?

 

OSC_vynrwB
OSC_vynrwB
可能他只是想判断某些值
0
1
1arva
丹哥,可真热爱学习
Jordan裔
Jordan裔
:unamused:
返回顶部
顶部