
class Outer {
Nested nested;
Nested getNested() {
return nested;
}
public Outer(){
// nested = new Nested();
}
}
class Nested {
Inner inner;
Inner getInner() {
return inner;
}
public Nested() {
// inner = new Inner();
}
}
class Inner {
String foo = "Jerry";
String getFoo() {
return foo;
}
}
为了打印嵌套层数很深的foo:
public void test1(){
Outer outer = new Outer();
if (outer != null && outer.nested != null && outer.nested.inner != null) {
System.out.println(outer.nested.inner.foo);
}
}
# 文艺青年的写法
public void test2(){
Optional.of(new Outer()).map(Outer::getNested).map(Nested::getInner).map(Inner::getFoo)
.ifPresent(System.out::println);
}More discussion of ABAP, Java and JavaScript could be found from my Wechat article Jerry的ABAP, Java和JavaScript乱炖: Jerry的ABAP, Java和JavaScript乱炖
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24475491/viewspace-2679315/ ,如需转载,请注明出处,否则将追究法律责任。