避免 NullPointerException 的干净方法在相等检查中
2022-09-01 20:25:53
我有一个地址对象,我想为其创建一个相等的方法。我可以通过做如下操作(缩短一点)来使它变得非常简单:
public boolean equals(Object obj)
{
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Address other = (Address) obj;
return this.getStreet().equals(other.getStreet())
&& this.getStreetNumber().equals(other.getStreetNumber())
&& this.getStreetLetter().equals(other.getStreetLetter())
&& this.getTown().equals(other.getTown());
}
问题是,其中一些可能为空。换句话说,如果这个地址中没有街道信件,我会得到一个。NullPointerException
如何在考虑空值的同时以干净的方式编写此内容?