Java 爪哇声纳违反;将三元运算符的这种用法转换为;如果/&引用;否则";结构“;

Java 爪哇声纳违反;将三元运算符的这种用法转换为;如果/&引用;否则";结构“;,java,sonarqube,Java,Sonarqube,我们如何将其改写为if-else结构? 不创建任何警告 注意:stageIndexingCode属于String类型。您应该研究一下什么是三元运算符 stageIndexingCode = StringUtils.isEmpty(indexOperation) ? stageIndexingCode : indexOperation; 简称: if (StringUtils.isEmpty(indexOperation

我们如何将其改写为if-else结构? 不创建任何警告


注意:
stageIndexingCode
属于
String

类型。您应该研究一下什么是三元运算符

stageIndexingCode = StringUtils.isEmpty(indexOperation) 
                  ? stageIndexingCode 
                  : indexOperation;
简称:

if (StringUtils.isEmpty(indexOperation)) {
    stageIndexingCode = stageIndexingCode;
} else {
    stageIndexingCode =indexOperation;
}

OP当然知道三元运算符-第一个建议不是考虑问题请求“不创建任何警告”(我相信)第一个建议是三元运算符到if/else结构的基本转换,但是是的,它可能会对无用代码发出警告。我的意思是,作者已经知道,这不是问题所在!问题是如何编写它,避免来自SonarQube的警告!好吧,这就是为什么我要用较短的形式。@CarlosHeuberger:所以我将使用第二个建议。1-禁用警告(
//NOSONAR
,或
@superswarnings(…)
)?!,2-
如果(!…为空(…))阶段标识代码=索引操作。无论如何,我会避免(即使不是直接)编写
stageIndexCode=stageIndexCode
if (!StringUtils.isEmpty(indexOperation)) {
    stageIndexingCode =indexOperation;
}