学习笔记-Java8新特性-第五节-Optional类
Optional类
-
Optional<T>是一个容器类
-
代表一个值存在或不存在
-
致力于解决空指针异常问题(NPE)
-
可以快速锁定发生NPE的位置
-
(这东西真的好用吗?)
常用方法
-
Optional.of(T t)
-
创建一个Optional实例
-
不能传入空指针,会报NPE
-
使用Optional,报空指针了,说明就是这里的问题?
-
-
get()
-
获取容器中的值
-
容器为空会报NPE
-
-
Optional.empty()
- 创建了一个空的Optional实例
-
Optional.ofNullable(T t)
-
创建一个Optional实例
-
如果传入null
-
创建一个空的实例
-
-
isPresent()
- 判断是否包含值
-
orElse(T t)
-
不为空,则返回值
-
为空,则返回指定的值
-
-
orElseGet(Supplier s)
-
不为空,则返回值
-
为空,则返回s获取的值
-
-
map(Function f)
-
不为空,对其处理,返回处理后的Optional
-
为空,返回空Optional
-
-
flatMap(Function f)
-
同上
-
但是要求f的返回值是Optional
-
合集:
学习笔记-Java8新特性
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!