文章目录
01 概述
- 01 概述
- 02 Optional详细用法
- 2.1 Optional下的方法
- 2.1.1 ofNullable下的方法
- 2.1.1.2 orElseThrow下的方法
- 2.2 Optional完整实例
- 03 文末
Optional类主要是为了解决NPE
(NullPointerException
)空指针异常而产生的,在我看来它是 Java
实现函数式编程的一种很好的方式。
举个列子看看它的简单用法:
List list = Optional.ofNullable(orderList)
.orElseThrow(() -> new RuntimeException("集合不能为空"))
.stream()
.sorted(Comparator.comparing(order -> order.getSort()))
.collect(Collectors.toList());
下面来详细讲解它的用法。
02 Optional详细用法首先建一个学生Student
实体类:
@Data
public class Student {
/**姓名**/
private String name;
/**年龄**/
private Integer age;
public Student(String name, Integer age) {
this.name = name;
this.age = age;
}
}
初始化学生信息:
List studentList = new ArrayList();
studentList.add(new Student("张三", 33));
studentList.add(new Student("李四", 40));
studentList.add(new Student("王五", 23));
studentList.add(new Student("赵六", 55));
studentList.add(new Student("陆七", 32));
studentList.add(new Student("王八", 18));
ok,现在可以正式讲解Optional
的用法了。
可以看到,Optional根据提示有三个初始化方法,分别是“ofNullable
”、“of
”、“empty
”: 它们的含义如下:
value
是null
,那么会抛出空指针异常ofNullable(T value)如果value
为null
,那么就会手动创建一个new Optional()
empty()此方法返回此Optional
类的空实例,就是不包含任何值
可以看到以上的三个方法都是初始化Optional
实例而产生的,那么接下来以ofNullable(T value)
方法为例子继续讲解。
可以看到使用ofNullable
方法初始化完Optional实例后,有很多的方法,如下图: 它们的含义如下:
关注
打赏