有时候,我看到了这个:
if (a.equals(b)) do(something);
Run Code Online (Sandbox Code Playgroud)
但是,如果a为null,则抛出NullPointerException.假设何时a==null和/ b==null或如果a==b我想要do(something).在没有异常的情况下进行此检查的最简单方法是什么?
Pet*_*rey 24
另一种写作方式.
if (a == null ? b == null : a.equals(b))
Run Code Online (Sandbox Code Playgroud)
McD*_*ell 22
if( a==b || (a!=null && a.equals(b)) )
Run Code Online (Sandbox Code Playgroud)
(a==b当两者都为空时处理大小写.)
还要注意Java 7及以上的Object.equals方法:
if(java.util.Object.equals(a, b))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7361 次 |
| 最近记录: |