Java 8 Optional最佳实践
Java从1.8之后引入了optional API,用以一定程度地避免NPE(NullPointerException)。然而可能很多人对这个精心设计的API还没那么熟练,甚至会有一些滥用。下面会详细讨论,然后给出我所认为的最佳实践。
来自作者的说明首先我们来看一下Optional的作者Brian Goetz对这个API的说明:
Our intention was to provide a limited mechanism for library method return types where there needed to be a clear way to represent “no result”, and using null for such was overwhelmingly likely to cause errors.
大意为,为了避免null带来的错误,我们提供了一个可以明确表示空值的有限的机制。
基础理解首先,Optional是一个容器,用于放置可能为空的值,它可以合理而优雅的处理null。众所周知,null在编程历史上极具话题性,号称是计算机历史上最严
2020-03-11
Java
我为什么开始写博客了
引言从今天开始,准备日常的去更新博客了。不算什么新鲜事,现在技术很成熟,群众基础也很广,任何一个没有技术基础的人都可以通过简单的配置搭建自己的博客。大概2年前,我就准备写了,当时也是通过hexo,找了一篇技术博客翻译了一下,也仅仅是发表了那一篇,后来因为懒就断更了。这一断就是2年,现在再次准备更新起来,换了一套博客主题,换了一种生活,换了一家公司,也更新了对很多事物的认知。
为什么要写作提升先引用一位业界大佬的话:
You should blog even if you have no readers
——Nathan Marz
这位Nathan Marz是大名鼎鼎的Apache Storm的作者,他在2010年的一篇博客里阐述了他的想法,有兴趣可以看看:You should blog even if you have no readers。这篇文章说了三个点:
写作会让你变成更好的读者
写作会让你更聪明
写作会带来一些附加价值:个人影响力等等
举个例子,想要更好的学习一种技术或者理论,就向同事或者朋友们发起一次分享。因为要清楚地向别人阐述一个新的观点,你会逼自己更高效地的学习