集合用法
3. Seq集合
3.1 不可变List
3.1.1 如何创建List集合
object ScalaCollection{
def main(args: Array[String]): Unit = {
val list = List(1,2,3,4)
val list1: List[Int] = list :+ 1
println(list1 eq list)
list1.foreach(println)
val list2: List[Int] = 1 +: list
list2.foreach(println)
println("*****************")
val list3: List[Int] = list.updated(1,5)
println(list eq list3)
List3.foreach(println)
}
}
3.1.2 基本操作
val ints: List[Int] = list :+ 5
val ints1: List[Int] = 5 +: list
ints.foreach(println)
println("---------------")
ints1.foreach(println)
3.2 可变List
3.2.1 基本语法
import scala.collection.mutable.ListBuffer
object ScalaCollection{
def main(args: Array[String]): Unit = {
val buffer = new ListBuffer[Int]()
buffer.append(1,2,3,4)
buffer.update(1,3)
buffer.remove(2)
buffer.remove(2,2)
println(buffer(1))
buffer.foreach(println)
}
}
3.2.2 基本操作
import scala.collection.mutable.ListBuffer
object ScalaCollection{
def main(args: Array[String]): Unit = {
val buffer1 = ListBuffer(1,2,3,4)
val buffer2 = ListBuffer(5,6,7,8)
val buffer3: ListBuffer[Int] = buffer1 :+ 5
val buffer4: ListBuffer[Int] = buffer1 += 5
val buffer5: ListBuffer[Int] = buffer1 ++ buffer2
val buffer6: ListBuffer[Int] = buffer1 ++= buffer2
println( buffer5 eq buffer1 )
println( buffer6 eq buffer1 )
val buffer7: ListBuffer[Int] = buffer1 - 2
val buffer8: ListBuffer[Int] = buffer1 -= 2
println( buffer7 eq buffer1 )
println( buffer8 eq buffer1 )
}
}
3.2.3 可变集合和不可变集合转换
import scala.collection.mutable
import scala.collection.mutable.ListBuffer
object ScalaCollection{
def main(args: Array[String]): Unit = {
val buffer = ListBuffer(1,2,3,4)
val list = List(5,6,7,8)
val list1: List[Int] = buffer.toList
val buffer1: mutable.Buffer[Int] = list.toBuffer
}
}
3.3 Set集合
3.3.1 不可变Set
3.3.1.1 创建不可变的Set
object ScalaCollection{
def main(args: Array[String]): Unit = {
val set1 = Set(1,2,3,4)
val set2 = Set(5