> idEmails;表示ID与Email的映射,表示有的ID对应的Email是可选存在的。 Optional在现代编程语言Scala,Rust,Swift支持了,是标准的nullable值的处理方式,它的好处有:避免空指针异常,减少频繁地嵌套式判空处理,让业务逻辑更直观。Optional的使用场景是尽可能减少null的直接使用,包括RPC调用、缓存和数据库查询等可能返回缺失的情形。
1. 不要对optional对象赋值/返回为null,或与null比较,例如: Optional foo = null; // bad2. 不应该返回Optional, Optional, Optional, 而用 OptionalInt, OptionalLong, OptionalDouble