2016-04-19 5 views
1

私はScala言語の初心者です。 Scalaで、一覧コード以下の通り不変である:Scalaでは、リストは不変ですが、

scala> var list = List(1,2,3,4,5) // List created named ‘ list ’           

list: List[Int] = List(1, 2, 3, 4, 5)           

scala> 25 :: list // Prepend with Cons(::) , But here new list created.               
res2: List[Int] = List(25, 1, 2, 3, 4, 5) 

scala> list      // print ‘ list ’ 
res3: List[Int] = List(1, 2, 3, 4, 5) 

しかし、上記の例で

scala> list                  
res1: List[Int] = List(1, 2, 3, 4, 5)           

scala> list :+= 12  // append list with :+= 

scala> list                  
res2: List[Int] = List(1, 2, 3, 4, 5, 12) 

、同じ "リスト" が添付されています。リストはどのように不変ですか?それは私を混乱させている。誰も私に親切に説明する?

+0

実際に変更可能なリストを使用したい場合は、 'scala.collections.MutableList'またはその多くのバリアントからインポートしていくつかのものを取得することができます。 –

答えて

関連する問題