如何检查对象和嵌套字段是否为空 [英] How to check if object and nested fields are null

查看:66
本文介绍了如何检查对象和嵌套字段是否为空的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个对象,我想检查此对象或嵌套字段是否为空.我想打印此网络字段,但我应该检查某个级别是否存在null,否则我将获得null指针异常.

I have an object and i want to check if this object or nested fields are null. I want to print this neted field, but i should check if there is null in some level, otherwise i will get null pointer exception .

我知道我可以做到:

if( object != null && object.A != null && object.A.B != null && object.A.B.C != null && object.A.B.C.D != null) { doSomething( object.A.B.C.D);}

但是太长了.您知道更好的检查方法吗?

but its so long. Do you know better way to check it ?

推荐答案

在Java 8中,可选是一个好方法.

Optional is a good way in Java 8.

String value = foo.getBar().getBaz().toString();

带有可选选项的将是:

String value = Optional.ofNullable(foo)
                       .map(Foo::getBar)
                       .map(Bar::getBaz)
                       .map(Baz::toString)
                       .orElse("EmptyString");

这篇关于如何检查对象和嵌套字段是否为空的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆