1
我明白,我可以写在Scala中如何使用=进行数组更新?
myArray(index) = newValue
更新阵列。但是,我不明白这是如何在内部工作的。我从另一个问题中了解到,=
通常不是Scala中的方法调用。我也明白括号是在对象上调用apply()
方法的简写,所以我假设myArray(index)
表示myArray.apply(index)
。
但是,它是如何工作的,为刚刚从方法调用返回的值赋值?
这是否适用于所有类别?这是否意味着有一个通用的规则,还是只对数组起作用?如果它是特殊的,我怎样才能为我自己的类指定类似的东西? – lex82
编辑我的答案,以解决您的评论。 – Clashsoft
@ lex82:作为一般规则,Scala非常努力只有一般规则;-)与流行的观点相反,Scala是一种非常简单的语言,比Java更简单,正是因为它试图只有一些功能强大一般规则和没有特殊情况下,角落案件,边界案件,特殊的内置魔术语法等。 –