collections.mutable.png上图是mutabl的类图,在Seq下有一个Buffer,是其他集合包里没有的.

    Buffer是mutable下一个比较重要的元素,他不仅允许更新已经存在的元素,同时允许元素的增加,删除,追加新元素到buffer尾部。buffer最主要的新方法如下:

  1. 尾部追加:+=++=

  2. 头部添加:+=: , ++=:

3.  插入:  insert, insertAll

4.  删除:  remove , -=

   两个常用的Buffer实现,ListBuffer 和 ArrayBuffer. 见名见意,ListBuffer被List支持,他能够高效的转换他的元素到一个List. 而ArrayBuffer被Array支持,也能快速的转换为一个Array.

Class Buffer中的方法

WHAT IT IS WHAT IT DOES
添加
buf += x 追加元素x到buffer,返回buf
buf += (x, y, z) 追加括号内元素到buf
buf ++= xs 追加集合xs中的元素到buf
x +=: buf buf头部插入元素x
xs ++=: buf buf头部插入xs的所有元素
buf insert (i, x) 插入x到索引i的位置
buf insertAll (i, xs) 插入xs的所有元素,以i位置为起始
删除
buf -= x 从buffer中删除元素x
buf remove i 删除索引i的元素
buf remove (i, n) 删除n个元素,从索引i开始
buf trimStart n 删除前n个元素
buf trimEnd n 删除后n个元素
buf.clear() 清空buffer
克隆
buf.clone 生成一个心的buf,包含的元素相同