有关.equals判断遇到 左右都为空值 的情况怎么处理

a, b, c, d 字符串都有可能为null。
想满足类似于下面的判断。

if(a.equals(b) && c.equals(d))
{
处理;
}

判断值是否相等。可是用equals左侧空值时报错。
不能用判断地址的‘==’。

请问下各位大大怎么处理呢。谢

假如两个字符串都不确定是否为null,可以采用sdk提供的util工具类,例如TextUtils.equal(a, b)

判断空是必要的,异常堆栈还是可能影响性能的。
if ( a != null && a.equals(b) && c != null && c.equals(d)){
处理;
}

如果有帮助,希望采纳

public static boolean equals(CharSequence a, CharSequence b) {
if (a == b) return true;
int length;
if (a != null && b != null && (length = a.length()) == b.length()) {
if (a instanceof String && b instanceof String) {
return a.equals(b);
} else {
for (int i = 0; i < length; i++) {
if (a.charAt(i) != b.charAt(i)) return false;
}
return true;
}
}
return false;
}