检查两个对象是否相等,即使它们可能为 null
有时,我会看到这样的情况:
if (a.equals(b)) do(something);
但是,如果 a
为 null,则会引发 NullPointerException。假设当 a==null
和 b==null
或只是 a==b
时,我想要做(某事)
。执行此检查而不出现异常的最简单方法是什么?
Sometimes, I see this:
if (a.equals(b)) do(something);
However, if a
is null, a NullPointerException is thrown. Assuming when a==null
and b==null
or if just a==b
that I would want to do(something)
. What's the simplest way to do this check without getting an exception?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
另一种写法。
Another way of writing it.
(
a==b
处理两者都为 null 的情况。)还要注意 Java 7 及更高版本 Object.equals 方法:
(The
a==b
handles the case when both are null.)Also be aware of the Java 7 and above Object.equals method: