IDEA提示:Boolean method ‘xxx‘ is always inverted问题
提示详情
一个返回类型为布尔值的方法,被IDEA自动高亮,提示为
Boolean method 'xxx' is always inverted
并提供一个Invert method的解决方案。

一句话解释一下,就是:你这个方法返回值总是被取非(!)使用,为啥不直接返回一个取非后的值呢。
提示原因
IDEA进行语句了简洁性检查,因为在调用此方法时均对结果进行取非(! boolean)。
所以建议你干脆修改方法,让方法输出一个取非值,并改一下方法名。
/**
* 示例:一个人没钱的话,就给他安排上好的圈子
*/
private boolean isRich(Man man){
if (man == null){
return false;
}
// 有存款不欠债
if (man.getDeposit() == 0 || man.getDebt() != 0){
return false;
}
// 有房有车
return man.getCarNum() != 0 && man.getHouseNum() != 0;
}
...
// 没钱的tom需要富豪做朋友
if (!isRich(tom)){
tom.setFriend("富豪");
}
...
// 没钱的jerry需要马爸爸
if (!isRich(jerry)){
jerry.setFather("爸爸");
}
所以IDEA建议你直接修改方法为:判定是不是穷。
点击其提供的Invert method,输入新的方法名isPoor

IDEA会自动处理代码,输入前方法返回值取非的结果,并对方法被调用的地方进行修改。
原代码就会变成:
private boolean isPoor(Man man){
if (man == null){
return true;
}
// 没存款还欠债
if (man.getDeposit() == 0 || man.getDebt() != 0){
return true;
}
// 没房没车
return man.getCarNum() == 0 || man.getHouseNum() == 0;
}
...
// 没钱的tom需要富豪做朋友
if (isPoor(tom)){
tom.setFriend("富豪");
}
...
// 没钱的jerry需要马爸爸
if (isPoor(jerry)){
jerry.setFather("马爸爸");
}
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
java MultipartFile文件上传重命名详细代码示例
在文件上传功能开发中,为防止文件重名导致数据覆盖,常见的做法是在文件名前加上UUID或时间戳来区分,这篇文章主要介绍了java MultipartFile multipartFile文件上传重命名的相关资料,需要的朋友可以参考下2024-09-09
Spring MVC打印@RequestBody、@Response日志的方法
这篇文章主要介绍了Spring MVC打印@RequestBody、@Response日志的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2019-02-02
基于MybatisPlus插件TenantLineInnerInterceptor实现多租户功能
这篇文章主要介绍了基于MybatisPlus插件TenantLineInnerInterceptor实现多租户功能,需要的朋友可以参考下2021-11-11


最新评论