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) //这种方法效率低下,因为:::的操作时间与它的第一个操作数成正比,所以 //整个操作费时与列表长度平方成正比