理解使用mutable.MultiMap创建mutable.Map的代码

时间:2014-10-15 09:56:01

标签: scala scala-collections

任何人都可以解释这个密集代码中发生了什么:

val m = new mutable.HashMap[Int, mutable.Set[String]] with mutable.MultiMap[Int, String]

1 个答案:

答案 0 :(得分:1)

据我所知,

new mutable.HashMap[Int, mutable.Set[String]]      

创建一个可变的HashMap,其键为Int,值为可变的字符串集

with mutable.MultiMap[Int, String]

这表明mutable.HashMap被强制混合使用mutable.MultiMap。 以下可以是HashMap的定义

class HashMap {
   self: mutable.MultiMap => 
}

这被称为自我注释。它基本上说HashMap不是一个多图,但它的实例是承诺的,所以你可以像编码多图一样编写HashMap