码迷,mamicode.com
首页 > 其他好文 > 详细

Optional

时间:2019-08-06 00:53:28      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:适合   optional   包括   实现   容器   数组   stream   没有   原则   

1.永远不要通过返回Optinoal的方法返回null,因为它彻底违反了optional的本意

2.optional本质上是一个不可变的集合,最多只能存放一个元素。Optional<T>没有实现Collection<T>接口,但原则上是可以的。

3.optional本质上与受检异常相类似,因为它们强迫api用户面对没有返回值的现实。

4.并非所有的返回类型都受益于optional的处理方法。容器类型包括集合,映射,Stream,数组和optional,都不应该被包装在optional中。不要返回空的Optional<List<T>>,而应只返回一个空的List<T>。返回空的容器可以让客户端免于处理一个optional。

5.永远不应该返回基本包装类型的optional。

6.几乎永远都不适合用optional作为键,值,或者集合或者数组中的元素。

7.应当注意到与返回optional相关的真实的性能影响,对于注重性能的方法,最好还是返回一个null,或者抛出异常。

8.尽量不要将optional用作返回值之外的任何其他用途

Optional

标签:适合   optional   包括   实现   容器   数组   stream   没有   原则   

原文地址:https://www.cnblogs.com/lccsblog/p/11306235.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!