![8911d062740ef3822ef2abc6dbd1f69e.png](https://img-blog.csdnimg.cn/img_convert/8911d062740ef3822ef2abc6dbd1f69e.png)
如果有这样一个嵌套对象User,嵌套了用户的地址Address,此时我们要获取地址中的邮政编码的值,通常我们会采用以下代码编写获取该值:
String postalCode = user.getAddress().getPostalCode().toUpperCase();
但在以上代码中,只要任意一个对象的值为NULL时,都可能导致NullPointerException异常。如果我们需要确保不触发异常,就需要在访问每一个值之前,对其进行NULL值检查:
if (user != null) {
Address address = user.getAddress();
if (address != null) {
String postalCode = address.getPostalCode();
if (postalCode != null) {
postalCode = postalCode .toUpperCase();
}
}
}
但这样的代码很容易就变得冗长了,一次取值三次判断NULL值。那有没有什么更简洁的代码可以优化此类操作呢?