10

创建空 ListBuffer 的最有效方法是什么?

  1. val l1 = new mutable.ListBuffer[String]
  2. val l2 = mutable.ListBuffer[String] ()
  3. val l3 = mutable.ListBuffer.empty[String]

有什么好处和坏处的区别吗?

4

2 回答 2

13

按效率排序:

  1. new mutable.ListBuffer[String]
  2. mutable.ListBuffer.empty[String]
  3. mutable.ListBuffer[String] ()

ListBuffer可以看&的源码GenericCompanion

于 2010-04-09T09:51:25.107 回答
9

new mutable.ListBuffer[String]仅创建一个对象(列表缓冲区本身),因此它应该是最有效的方法。mutable.ListBuffer[String] ()并且mutable.ListBuffer.empty[String]都首先创建一个 instanceof scala.collection.mutable.AddingBuilder,然后要求它提供一个新的 ListBuffer 实例。

于 2010-04-09T10:06:58.037 回答