我正在查看toArray
for hashmaps 的定义:
http://www.scala-lang.org/api/current/index.html#scala.collection.immutable.HashMap
它有
toArray: Array[A]
def toArray[B >: (A, B)](implicit arg0: ClassTag[B]): Array[B]
我不太明白这一点 - 第一部分说你得到了一个 Array[A],但第二部分说你得到了 Array[B]?这些都不是我所期望的 - Array[(A,B)]
当我自己检查时:
scala> val x = scala.collection.mutable.HashMap[String, Int]()
x: scala.collection.mutable.HashMap[String,Int] = Map()
scala> x.put("8", 7)
res0: Option[Int] = None
scala> x foreach println
(8,7)
scala> x.toArray
res2: Array[(String, Int)] = Array((8,7))
为什么不像 toList?
toList: scala.List[(A, B)]