值是 null 的情况
- a.equals(b) 当 a 是 null 的时候,抛出 NullPointerException 异常
- a.equals(b) 当 a 不是 null,b 是 null 的时候,返回 false
- Objects.equals(a,b) 比较时,a 或者 b 即使是 null 时,也不抛异常
null.equals("abc") → 抛出 NullPointerException 异常
"abc".equals(null) → 返回 false
null.equals(null) → 抛出 NullPointerException 异常
Objects.equals(null, "abc") → 返回 false
Objects.equals("abc",null) → 返回 false
Objects.equals(null, null) → 返回 true
值是 空文字 的情况
- a.equals(b) 当 a 或者是 b 或者两者都为空文字的时候, 不发生例外
- Objects.equals(a,b) 比较时,不发生例外
文字列.equals("") → 返回 false
"".equals(文字列) → 返回 false
"".equals("") → 返回 true
Objects.equals(文字列, "") → 返回 false
Objects.equals("",文字列) → 返回 false
Objects.equals("","") → 返回 true