如果我输入以下代码,
var x = ("This is driving me nuts!", 38)
x._2 = 58
Run Code Online (Sandbox Code Playgroud)
我收到以下错误.
error: reassignment to val
x._2 = 58
Run Code Online (Sandbox Code Playgroud)
我怎么解决这个问题?我的意思是,我怎么能够为元组的第二个元素分配一个新值.
你没有,因为元组是不可变的.
相反,创建一个新元组并将其分配给x:
x = (x._1, 58)
Run Code Online (Sandbox Code Playgroud)
做事的"Scala方式"(最佳实践)是尽可能地保持一切不变.这包括:var只有在你有充分理由时才使用(可变变量); 否则,使用val(不可变值).
| 归档时间: |
|
| 查看次数: |
134 次 |
| 最近记录: |