我无法修复此代码气味:
public static boolean esStringVacio(final Object valor) {
if (valor == null) {
return true;
}
String valorTrim = valor.toString().trim();
if ((valorTrim).equals("")) {
return true;
}
if ((valorTrim).equals("null")) {
return true;
}
return false;
}
尝试过,但代码气味仍然存在:
if (valor == null || valor.toString().trim().equals("") || valor.toString().trim().equals("null")) {
return true;
} else {
return false;
}
您可以将其缩短为:
return (valor == null || valor.toString().trim().equals("") || valor.toString().trim().equals("null"));
编辑:您可以将更多缩短为:
return ((String.valueOf(valor).trim().equals("null")) || (StringUtils.isBlank(valor)) ;
感谢欧内斯特的建议。
您可以将最后3个返回合并为一个OR,它仍然是可靠的/可读的。
public static boolean esStringVacio(final Object valor) {
if (valor == null) {
return true;
}
String valorTrim = valor.toString().trim();
return valorTrim.equals("") || valorTrim.equals("null");
}