Java:避免检查嵌套类中的空值(深度空值检查)
想象一下,我有一个班级家庭。它包含一个人员列表。每个(类)人员包含一个(类)地址。每个(类)地址包含一个(类)邮政编码。任何“中间”类都可以为 null。
那么,有没有一种简单的方法可以到达邮政编码,而不必在每个步骤中检查空值?也就是说,有没有办法避免以下菊花链代码?我知道没有“原生”Java解决方案,但希望有人知道库或其他东西。(检查了Commons和番石榴,没有看到任何东西)
if(family != null) {
if(family.getPeople() != null) {
if(family.people.get(0) != null) {
if(people.get(0).getAddress() != null) {
if(people.get(0).getAddress().getPostalCode() != null) {
//FINALLY MADE IT TO DO SOMETHING!!!
}
}
}
}
}
不可以,不能更改结构。它来自我无法控制的服务。
不,我不能使用Groovy,它是方便的“猫王”运算符。
不,我宁愿不等待Java 8:D
我不敢相信我是第一个厌倦了编写这样代码的开发人员,但我无法找到解决方案。