Scala中使用var和val定义mutable集合与immutable集合的区别

发布网友 发布时间:2022-04-24 10:41

我来回答

1个回答

热心网友 时间:2023-10-10 10:37

var:变量值可变;val:变量值不可变
var var0 = 0,var0的值可以进行后续修改,如:var0 = 1
val val0 = 0,var0的值不可以修改,val0 = 1是不能编译通过的
mutable:容器的元素可变;immutable:容器的元素不可变
val mutable0 = collection.mutable.Set(0),可以继续追加元素,如mutable0 += 1
val immutable0 = collection.immutable.Set(0),immutable0 += 1是不能编译通过的
两者的差别在于,如果是用val定义的,即使使用mutable集合,也只能对集合的元素进行修改,如mutable0 += 1;而不能让变量指向另一个集合,如mutable0
= collection.mutable.Set(1)
而如果是用var定义的则可以让变量指向另一个集合,如
var immutable0 = collection.immutable.Set(0)
immutable0 = collection.immutable.Set(1)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com