Optional 的主要用途是什么?为什么不建议直接对空值调用 get?
参考答案
Optional(Java 8 起)用于显式表达一个返回结果可能不存在,并提供 map、orElse 等处理方式。空 Optional 调用 get 会抛 NoSuchElementException。
题目解析
它不能替代所有 null 检查;使用前先明确无值时的业务行为,按场景选择 orElseThrow、orElseGet 或 ifPresent。
Optional(Java 8 起)用于显式表达一个返回结果可能不存在,并提供 map、orElse 等处理方式。空 Optional 调用 get 会抛 NoSuchElementException。
它不能替代所有 null 检查;使用前先明确无值时的业务行为,按场景选择 orElseThrow、orElseGet 或 ifPresent。