scala - 主构造函数,带下划线的值

标签 scala scala-primary-constructor

尝试一下(在 Scala 2.10.3 中):

scala> class A(var a: Int = _)
<console>:1: error: unbound placeholder parameter
       class A(var a: Int = _)
                            ^

问题是什么?默认值类型的下划线不能在主构造函数中使用?

最佳答案

下划线用于类型默认值的占位符(请参阅Scala 语言规范)。我不太确定为什么您想要执行这种类型的初始化而不是: class A(var a: Int = 0) 因为它可能更简洁,其他编码人员会立即知道默认值。

关于scala - 主构造函数,带下划线的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20336448/

相关文章:

主构造函数中的Scala局部变量

scala - scala中的交换位置列表

scala - 尽管定义了 ClassTag,但没有可用的 ClassTag

java - 执行 jar 中资源包中包含的脚本

scala - 可以对 scala dsl 进行编码以发出其自己的专门编译错误吗?

scala - 使用种类投影仪在 Scala 中部分应用类型 lambda

scala - scala 构造函数参数默认为 private val 吗?