从一个班轮创建多个新实例

时间:2013-11-17 05:37:11

标签: scala initialization variable-assignment

在Coursera的反应式编程原理课程的第二周讲座中,有一个例子包含了这段有趣的代码:

val notIn1, notIn2, notOut = new Wire

这里使用的语言功能是什么?

这会创建三个唯一的实例(向构造函数添加println会打印3行),因此会被转换为类似

的内容
val notIn1 = notIn2 = notOut = new Wire

调用new Wire的结果不会返回元组,因此我认为它不是模式匹配。有什么想法吗?

1 个答案:

答案 0 :(得分:9)

来自Scala Language Specification(4.1价值声明和定义):

  

值定义 val p 1 ,...,p n = e 是该   值定义序列 val p 1 = e ; ...; val p n = e