Java 8的可选,Scala选项和Haskell的Maybe之间的主要区别是什么?

前端之家收集整理的这篇文章主要介绍了Java 8的可选,Scala选项和Haskell的Maybe之间的主要区别是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经阅读了有关 Java 8即将推出的可选类型的几篇文章,我想了解为什么人们不断建议它不如Scala选项那么强大.据我所知,它有:

>使用Java 8 lambdas的高阶函数,如地图和过滤器.
> Monadic flatMap
通过getOrElse类型函数短路.

我失踪了什么

解决方法

有一些可能性(OTOH,我没有看到人们真的这样说,所以他们可能意味着别的)

>无模式匹配.
>不等同于Scala的折叠或Haskell的fromMaybe:您必须执行optional.map(…).或.ElseGet(…).
>没有一元语法.

我也不会把这些“不那么强大”的任何东西称为,因为你可以用相应的Scala / Haskell类型表达一切;这些都是简洁/可用性的问题.

猜你在找的Java相关文章