例如:
val m = Map[Int, Int]()
m + (1, 1) // doesn't work!
m + ((1, 1)) // works!
Run Code Online (Sandbox Code Playgroud)
我知道(1, 1)是一个Tuple2,但那么前者为何不起作用?我可以避免这种古怪的双括号吗?
m + (1, 1)是一样的m.+(1, 1),也就是说,它是一个带有两个整数参数的函数调用,而不是一个带有单个Tuple2参数的调用.
但是->,您可以使用哪种形式没有括号的元组:
val m = Map[Int, Int]()
m + 1 -> 1 // works!
Run Code Online (Sandbox Code Playgroud)
或者更有用的:
var m = Map[Int, Int]()
m += 1 -> 1 // works!
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
262 次 |
| 最近记录: |