Scala Set(集合)是没有重复的对象集合,所有的元素都是唯一的。Scala 集合分为可变的和不可变的集合。
默认情况下,Scala 使用的是不可变集合,如果你想使用可变集合,需要引用 scala.collection.mutable.Set 包。默认引用 scala.collection.immutable.Set。
虽然可变 Set 和不可变 Set 都有添加或删除元素的操作,但是有一个非常大的差别。对不可变 Set 进行操作,会产生一个新的 set,原来的 set 并没有改变,这与 List 一样。 而对可变 Set 进行操作,改变的是该 Set 本身,与 ListBuffer 类似。
object HaiCoder { def main(args: Array[String]) : Unit = { println("嗨客网(www.haicoder.net)!\n") val set = Set(1,2,3) println(set.getClass.getName) println(set.exists(_ % 2 == 0)) println(set.drop(1)) } }
程序运行后,输出如下:
我们使用 Set 创建了一个集合。如果需要使用可变集合需要引入 scala.collection.mutable.Set:
import scala.collection.mutable.Set // 可以在任何地方引入 可变集合 object HaiCoder { def main(args: Array[String]) : Unit = { println("嗨客网(www.haicoder.net)!\n") val mutableSet = Set(1,2,3) println(mutableSet.getClass.getName) // scala.collection.mutable.HashSet mutableSet.add(4) mutableSet.remove(1) mutableSet += 5 mutableSet -= 2 println(mutableSet) // Set(5, 3, 4) val another = mutableSet.toSet println(another.getClass.getName) // scala.collection.immutable.Set } }
程序运行后,输出如下:
这里,我们创建的是可变集合,因此,可以对集合里的元素进行修改。
Scala Set(集合)总结
Scala Set(集合)是没有重复的对象集合,所有的元素都是唯一的。Scala 集合分为可变的和不可变的集合。
默认情况下,Scala 使用的是不可变集合,如果你想使用可变集合,需要引用 scala.collection.mutable.Set 包。默认引用 scala.collection.immutable.Set。