Optional描述
Optional是jdk1.8中java.util.Optional下的一个容器类,可以保存任意类型的值,代表这个值存在,或者仅仅保存Null,表示这个值不存在,用来避免空指针异常。
创建Optional(三种方式)
(1). Optional.of(T t) # t必须为非空
(2). Optional empty = Optional.empty(); # 创建一个空的Optional对象
(3). Optional.ofNullable(T t) # t可以为空,也可以不为空
判断容器中是否包含对象
boolean isPresent(); # 判断容器中是否包含对象
获取容器中的对象
(1) T get(); #返回容器中的值(与Optional.of搭配)
(2)T orElse(T other); #容器中有值就返回容器中的值,若无则返回other
Demo测试
User user1 = new User(“szh1”);
Optional userOptional = Optional.ofNullable(user1);
User user2 = new User(“szh2”);
User user = userOptional.orElse(user2); #若user1不为空,返回user1,若user1为空,返回user2
System.out.println(user.toString());