我有一個Scala列表。我可以解構列表到一些變量這樣的:我可以解構(模式提取)一個Scala列表到一個重用var嗎?
var a :: b :: tail = myList
a should be ("A1")
b should be ("B1")
tail should be ('empty)
不過,我似乎不能夠重複使用相同的變量另一個解構:
a :: b :: tail = anotherList
a should be ("A2")
b should be ("B2")
tail should be ('empty)
編譯器告訴我,這預期分號,但找到了一個等號。爲什麼是這樣? 解構時不可能使用已經聲明的變量嗎?我在做一些愚蠢的事情嗎?
一個:: B ::尾 - 創建列表(對象)。像'3'::'5'::'3'。它是對象 - 不可變。所以你不能重用變量 - 用來創建這個列表。 –
相關:http://stackoverflow.com/q/2776651/298389 –