添加括号以使运算符优先级明确

问题描述 投票:0回答:1

在SonarQube构建上,它给出了此错误,其中说“在return语句中添加括号以使运算符优先级显式”。我不确定是先添加||还是&&的括号。

 public static boolean isAdvisorClass(PcsV1Product product){
        if(product == null || product.getShareClass()==null){
            return false;
        }
        return ShareClass.A.getAltName().equalsIgnoreCase(product.getShareClass().getValue()) ||
                PcsProductLogicUtil.isUSMutualFund(product) && ShareClass.A.getName().equalsIgnoreCase(product.getShareClass().getValue());
    }
java sonarqube assert
1个回答
0
投票

[&&的优先级高于||,因此,为了保持相同的行为,请将它们添加到&&位的周围。

return ShareClass.A.getAltName().equalsIgnoreCase(product.getShareClass().getValue()) ||
        (PcsProductLogicUtil.isUSMutualFund(product) && ShareClass.A.getName().equalsIgnoreCase(product.getShareClass().getValue()));
© www.soinside.com 2019 - 2024. All rights reserved.