Вероятно, сонар не понимает семантику Strings.isNullOrEmpty
.
. Вы можете сделать его менее запутанным со всех сторон, если бы вы написали условие как:
if (value != null) {
На самом деле не имеет значения, если вы вызываете contains
для пустой строки.
Кроме того, это:
if (value.contains("true")) {
return true;
} else {
return false;
}
легче записать как
return value.contains("true");
В целом, вы можете написать это как:
return value != null && value.contains("true");
Изменить для своего обновления: если вы используете Boolean.parseBoolean
, вам даже не нужна проверка на ноль.parseBoolean
возвращает false
для нулевого ввода.
String value = getValue("/data/" + set, property);
return Boolean.parseBoolean(value);