在有限的意义上,自己编写out
和ref
类非常容易,但我的问题不是如何做到 - 但是否有一些功能(或类) )准备好了吗?
我发现最接近的是Reference
特质(但它是一种特质)。
我需要那些,而不是元组,而不是Option,而不是纯粹的结果,因为只有ref / out才能使链接优雅。
答案 0 :(得分:5)
不,Scala支持按值或按名称传递参数。通过引用传递的参数实际上很难在JVM中正确完成,这可能是没有一种流行的JVM语言拥有它的原因之一。另外,out和ref参数鼓励通过副作用进行编程,这是Scala设计中尽可能避免的。
至于if的链接,有很多方法可以实现像Scala那样的效果。 “匹配”表达式是最明显的,您也可以使用Option或Either查看monadic组合。