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

Optional使用

程序员文章站 2022-06-08 10:18:42
...

所有方法:
Optional使用

/**
*对象A不为空取A,否则B
*/
Optional.ofNullable(user).orElseGet(User::new);

/**
*对象A不为空取A.prop, 否则取给定值
*/
Optional.ofNullable(user).map(User::getUsername).orElse("Default Name");

/**
*对象A为空,抛出异常
*/
Optional.ofNullable(user).orElseThrow(RuntimeException::new);

/**
*检验参数有效性
*/
    Optional.ofNullable(user).filter(User::isValid).orElseThrow(RuntimeException::new);

    @Data
    static class User {
        private String username;
        private String password;

        static boolean isValid(User user){
            return Objects.nonNull(user.username);
        }
    }

相关标签: java