scala中的list是一个不可变的列表,有时候我们想直接添加对象不太方便,这个时候可以先转成java的List添加完再转回去.
LIst支持在头部快速添加和移除条目,但是不提供快速按下标访问的功能,这个功能需要线性遍历列。
快速的头部添加和移除意味着模式匹配很顺畅
List列表跟数组非常像,2者都是同构的,同一个列表的所有元素必须是相同类型。
如果我们想要往一个list里面存一个object,因为list不像java的list,可以直接add进行.这个时候我们需要用LIstBuffer. LIstBuffer是一个可变的.
List提供头部快速访问,对尾部访问则没那么高效。List追加元素,通常考虑反过来,追加元素,再调用reverset
另一个可选方案,使用ListBuffer,提供了常量时间的往后追加和往前追加的操作,最后调用toList获取List。
具体的代码如下:
val list = ListBuffer[ItemView]().asJava list.add() //添加完成后,如果想要转回scala的list,直接asScala就行了 list.asScala