1
104
实际上我非常不同意丹尼尔的观点。我认为不相等的语法应该 从未 使用。如果您的方法被公开为API,并且您担心意外返回错误的类型,请添加显式类型注释:
不相等语法较短,可能看起来“更干净”,但我认为它只是增加了混淆的可能性。有时我忘了添加一个等号,并且相信我的方法在返回单位时返回了一个值。由于与推断类型语法不相等和相等在视觉上非常相似,很容易忽略这个问题。 尽管它花费了我更多的工作,但是我更喜欢显式的类型注释(即公开的接口)。 |
2
41
更新:从scala-2.10开始,最好使用等号。老回答:
返回的方法
当然,这是一个微不足道的例子,但您可以看到这可能是一个问题。因为最后一个表达式
不
返回
它还有两个字符更清晰。:-)我也倾向于认为非等号语法使代码更容易阅读。更明显的是,问题中的方法返回
在相关的注释中,抽象方法有类似的语法:
方法
|
3
12
你 必须 使用除返回单位的定义之外的等号登录调用声明。 在后一种情况下,您 可以 放弃等号。不过,这种语法可能会被弃用,因此最好避免使用。使用等号并声明返回类型将始终有效。 |
4
4
对于方法, Scala Style Guide 建议使用等号语法,而不是过程语法
|
5
0
一件事:假设一个应该返回Unit的方法的最后一条语句不返回Unit。使用不相等的语法非常方便,我希望这不会被否决,因为我看到了它的几个用例。 |
6
0
随着时间的推移,默认样式已经更改,并且在许多答案注释中都提到了这一点,建议在
official style guide
使用
|
7
0
对于没有返回值的方法,表示这种方法的方法是去掉结果类型和 等号,在方法后面是一个用大括号括起来的块。在 这种形式,方法看起来像一个过程,一个只执行的方法 因为它的副作用。 |
davidzxc574 · 将字符串缩放为字符 2 年前 |
yic_l · 什么是“!”在这个函数中是什么意思? 2 年前 |
Jelly · Scala:用于理解递归未来 2 年前 |
bbgghh · 在scala中连接两个列表时如何处理不匹配的键 2 年前 |
Iheb Mar · 卡夫卡制作人/消费者粉碎每一秒的API调用 2 年前 |
B. Bal · 在Scala中重用类成员 2 年前 |