欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java8使用Optional实现优美的npe判断

程序员文章站 2022-06-07 12:36:17
...

代码示例

import java.util.Optional;

public class test02 {
    public static void main(String[] args) {

        System.out.println("方法1输出的结果是:" + getName());
        System.out.println("方法2输出的结果是:" + getUser());
    }
    
    public static String getName() {
        User user = new User("hua wei",22);
        if (user != null) {
            String name = user.getName();
            if (name != null) {
                return name.toUpperCase();
            } else {
                return null;
            }
        } else {
            return null;
        }
    }

    public static String getUser() {
        User user = new User("tao bao",22);
        Optional<User> userOptional =  Optional.ofNullable(user);
        return userOptional.map(User::getName)
                .map(String::toUpperCase)
                .orElse(null);
    }
}

#输出的结果是:

方法1输出的结果是:HUA WEI
方法2输出的结果是:TAO BAO
相关标签: Java后端 java