0
点赞
收藏
分享

微信扫一扫

JAVA8 Optional 处理对象Null取属性报错

回溯 2024-07-24 阅读 25

Optional 类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。

Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,不用显式进行空值检测。

Optional 类的引入很好的解决空指针异常。

public String getCityUsingOptional(Person person) {
    String city = Optional.ofNullable(person)
            .map(Person::getHouse)
            .map(House::getAddress)
            .map(Address::getCity).orElse("Unknown city");
    return city;
}

只使用了一行代码就获取到city值,不用每个对象去不断的判断是否为空

引用:https://github.com/CoderLeixiaoshuai/java-eight-part/blob/master/docs/java/java8/%E4%BD%BF%E7%94%A8Java8%20Optional%E7%B1%BB%E4%BC%98%E9%9B%85%E8%A7%A3%E5%86%B3%E7%A9%BA%E6%8C%87%E9%92%88%E9%97%AE%E9%A2%98.md

举报

相关推荐

0 条评论