关于处理空指针问题的代码写法总结

1:JAVA8写法

//获取用户对应公司信息(公司电话)
public String getValue(User user) throws Exception{

return Optional.ofNullable(user)
.map(u-> u.getCompany())
.map(a->a.getTel())
.orElseThrow(()->new Exception("获取电话号码错误,请联系管理员!"));
}

  

2:JAVA8写法
//当引用数据时,对数据进行判空

 Optional.ofNullable(user)
    .ifPresent(u->{
        doMethod(u);
});

  

3: java8写法
//对获取对象里的数据进行判空并引用

public User getUser(User user) {
    return Optional.ofNullable(user)
                   .filter(u->"王大锤".equals(u.getName()))
                   .orElseGet(()-> {
                        User userTemp = new User();
                        userTemp .setName("王大锤");
                        return userTemp ;
                   });
}

  

posted @ 2022-04-19 10:57  唯恐不及  阅读(34)  评论(0编辑  收藏  举报