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("马云");
}
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值