IDEA提示:Boolean method ‘xxx‘ is always inverted問(wèn)題
提示詳情
一個(gè)返回類型為布爾值的方法,被IDEA自動(dòng)高亮,提示為
Boolean method 'xxx' is always inverted
并提供一個(gè)Invert method的解決方案。

一句話解釋一下,就是:你這個(gè)方法返回值總是被取非(!)使用,為啥不直接返回一個(gè)取非后的值呢。
提示原因
IDEA進(jìn)行語(yǔ)句了簡(jiǎn)潔性檢查,因?yàn)樵谡{(diào)用此方法時(shí)均對(duì)結(jié)果進(jìn)行取非(! boolean)。
所以建議你干脆修改方法,讓方法輸出一個(gè)取非值,并改一下方法名。
/**
* 示例:一個(gè)人沒(méi)錢(qián)的話,就給他安排上好的圈子
*/
private boolean isRich(Man man){
if (man == null){
return false;
}
// 有存款不欠債
if (man.getDeposit() == 0 || man.getDebt() != 0){
return false;
}
// 有房有車(chē)
return man.getCarNum() != 0 && man.getHouseNum() != 0;
}
...
// 沒(méi)錢(qián)的tom需要富豪做朋友
if (!isRich(tom)){
tom.setFriend("富豪");
}
...
// 沒(méi)錢(qián)的jerry需要馬爸爸
if (!isRich(jerry)){
jerry.setFather("爸爸");
}
所以IDEA建議你直接修改方法為:判定是不是窮。
點(diǎn)擊其提供的Invert method,輸入新的方法名isPoor

IDEA會(huì)自動(dòng)處理代碼,輸入前方法返回值取非的結(jié)果,并對(duì)方法被調(diào)用的地方進(jìn)行修改。
原代碼就會(huì)變成:
private boolean isPoor(Man man){
if (man == null){
return true;
}
// 沒(méi)存款還欠債
if (man.getDeposit() == 0 || man.getDebt() != 0){
return true;
}
// 沒(méi)房沒(méi)車(chē)
return man.getCarNum() == 0 || man.getHouseNum() == 0;
}
...
// 沒(méi)錢(qián)的tom需要富豪做朋友
if (isPoor(tom)){
tom.setFriend("富豪");
}
...
// 沒(méi)錢(qián)的jerry需要馬爸爸
if (isPoor(jerry)){
jerry.setFather("馬爸爸");
}
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
java代碼實(shí)現(xiàn)斗地主發(fā)牌功能
這篇文章主要介紹了java實(shí)現(xiàn)斗地主發(fā)牌功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11
Java如何解決發(fā)送Post請(qǐng)求報(bào)Stream?closed問(wèn)題
這篇文章主要介紹了Java如何解決發(fā)送Post請(qǐng)求報(bào)Stream?closed問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06
SpringBoot接口請(qǐng)求入?yún)⒑统鰠⒃鰪?qiáng)的五種方法
這篇文章主要介紹了SpringBoot接口請(qǐng)求入?yún)⒑统鰠⒃鰪?qiáng)的五種方法,使用`@JsonSerialize`和`@JsonDeserialize`注解,全局配置Jackson的`ObjectMapper`,使用`@ControllerAdvice`配合`@InitBinder`,自定義HttpMessageConverter和使用AOP進(jìn)行切面編程,需要的朋友可以參考下2024-07-07
Spring Boot實(shí)現(xiàn)文件上傳示例代碼
本篇文章主要介紹了Spring Boot實(shí)現(xiàn)文件上傳示例代碼,可以實(shí)現(xiàn)單文件和多文件的上傳,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03
SpringBoot項(xiàng)目整合MongoDB啟動(dòng)失敗的常見(jiàn)錯(cuò)誤及解決方法
這篇文章主要介紹了SpringBoot項(xiàng)目整合MongoDB啟動(dòng)失敗的常見(jiàn)錯(cuò)誤及解決方法,涵蓋了連接配置問(wèn)題、MongoDB服務(wù)配置問(wèn)題、依賴與自動(dòng)配置問(wèn)題、數(shù)據(jù)庫(kù)權(quán)限與數(shù)據(jù)問(wèn)題以及其他常見(jiàn)問(wèn)題的相關(guān)資料,需要的朋友可以參考下2025-11-11
Java 序列化詳解及簡(jiǎn)單實(shí)現(xiàn)實(shí)例
這篇文章主要介紹了 Java 序列化詳解及簡(jiǎn)單實(shí)現(xiàn)實(shí)例的相關(guān)資料,使用序列化目的:以某種存儲(chǔ)形式使自定義對(duì)象持久化,將對(duì)象從一個(gè)地方傳遞到另一個(gè)地方,需要的朋友可以參考下2017-03-03

