Optional讲解
发布日期:2025-04-29 07:59:17 浏览次数:16 分类:精选文章

本文共 787 字,大约阅读时间需要 2 分钟。

String result=user.getUserInfo().getBodyInfo().getDesc();

NullPointerException,

????? getUserInfo()?getBodyInfo() ? getDesc() ??????????????? null ????????????? NullPointerException, ??????????????????null??

?????:

if(user!=null){

UserInfo userInfo=user.getUserInfo();
if(userInfo!=null){
BodyInfo bodyInfo=userInfo.getBodyInfo();
if(bodyInfo!=null){
return bodyInfo.getDesc();
}
}
}
return null;

???????????????????????????????null?????????????????????????

?? Optional ???:

return Optional.ofNullable(user).map(User::getUserInfo).map(UserInfo::getBodyInfo).map(BodyInfo::getDesc).orElse(null);

??????? Java 8 ? Optional ????????????????ofNullable(user) ??????? Optional ?????????????? null ???????Else ?? null ?????????????????

?? Java 8+??? Optional ???????????????????????????????????

上一篇:ORA-00069: cannot acquire lock
下一篇:Optional类:避免NullPointerException

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2026年06月11日 06时56分22秒