Scala学习笔记--List、ListBuffer

时间:2022-09-26 04:00:39

 

ListBuffer(列表缓冲)

ListBuffer类位于  scala.collection.mutable.ListBuffer

    val buf = new ListBuffer[Int]
    val l1 = List(1,2,3,4,5)
    for (x<-l1)
      buf += x+1;
    println(buf)
    val l2 = buf.toList
    println(l2)

  结果

ListBuffer(2, 3, 4, 5, 6)
List(2, 3, 4, 5, 6)

  这是一种效率很高的创建列表的方式

  添加操作(+=)以及toList操作都只需要常量时间

 

  注意

var result = List[Int]()
for (x<-l1)
    result = result:::List(x+1)
    //这种方法效率低下,因为:::的操作时间与它的第一个操作数成正比,所以
    //整个操作费时与列表长度平方成正比