标签:个学生 nbsp 计算 blog str 空指针异常 optional 区别 介绍
废话少说:java.util.Optional 类可以大大减少 null 判断以及 NullPointerException 的异常发生。
1. Optional.of
Optional.of(null);//报 NullPointerException ,这方法不常用
2. Optional.ofNullable
Optional.ofNullable(null);//不报异常
3. Optional.get
Optional.ofNullable(null).get();//报空指针异常
4. Optional.orElse
String test = Optional.ofNullable(null).orElse("hello,world"); // test = "hello,world"
5. Optional.orElseGet
Optional.ofNullable("123").orElseGet(()->"永远不会执行我的");//延迟计算而已
5. Optional.isPresent
这个没啥用,你要这样用和用 xx != null 有啥区别。。
6. Optional.map
给你一个学生列表,你返回该学生的名称列表 怎么弄?
Optional.ofNullable(stus).map(Student::getName).orElse(Collection.emptyList());
7. Optional.flatMap
给你一个学生列表,你负责把每个学生的喜好收集起来,然后整理成另一个列表,怎么弄?
Optional.ofNullable(stus).flatMap(stu -> Optional.ofNullable(stu.getFavoutites())).orElse(Collection.emptyList());
标签:个学生 nbsp 计算 blog str 空指针异常 optional 区别 介绍
原文地址:http://www.cnblogs.com/kischn/p/5992506.html