Java 在子对象可能为空的情况下,如何使用SpEL计算子对象属性

Java 在子对象可能为空的情况下,如何使用SpEL计算子对象属性,java,spring,spring-el,Java,Spring,Spring El,我想评估一下 "user.name" 但是,user可能为null,这当然会导致NPE。有没有办法说,如果user不为null,只尝试获取名称?否则返回null 我读过Elvis语法,但我不知道如何在这里应用它您可以这样使用: user?.name 这与您描述的行为完全相同-如果用户为null,表达式将计算为null,否则将计算为user.name的值

我想评估一下

"user.name"
但是,
user
可能为null,这当然会导致NPE。有没有办法说,如果user不为null,只尝试获取名称?否则返回null

我读过Elvis语法,但我不知道如何在这里应用它

您可以这样使用:

user?.name
这与您描述的行为完全相同-如果用户为
null
,表达式将计算为
null
,否则将计算为
user.name
的值