scala - Scala 中的可观察 map

我是 Scala 的新手。我想在修改 map 时收到通知。我认为这可以使用可观察 map 来完成。

我正在尝试定义一个如下所示的对象

var myObj = new Map[UUID, MyType] with ObservableMap[UUID,MyType]

但它没有编译说..

error: object creation impossible, since:
method iterator in trait MapLike of type => Iterator[(java.util.UUID, MyType)] is not defined
method get in trait MapLike of type (key: java.util.UUID)Option[MyType] is not defined
method -= in trait ObservableMap of type (key: java.util.UUID)this.type is marked `abstract' and `override', but no concrete implementation could be found in a base class
method += in trait ObservableMap of type (kv: (java.util.UUID, MyType))this.type is marked `abstract' and `override', but no concrete implementation could be found in a base class

为什么会这样?如何实例化 ObservableMap?

最佳答案

您需要将 ObservableMap 与具体的 map 类型混合。

scala> import scala.collection.mutable._
import scala.collection.mutable._

scala> val map = new HashMap[Int, Int] with ObservableMap[Int, Int]
map: scala.collection.mutable.HashMap[Int,Int] with scala.collection.mutable.ObservableMap[Int,Int] = Map()

https://stackoverflow.com/questions/6848537/

相关文章:

c# - 我怎样才能得到列表的一半元素?

scala - 是否可以对变量使用 match scala 操作?

oracle - 我可以更改 Oracle 中的隔离级别吗?

.net - 有人使用 Amazon EC2 + SQL Azure 吗?

xml - XSL-FO - 如何生成目录?

css - 通过 CSS 为仅带换行符的文本设置背景颜色

assembly - : operator do in assembly? 是什么

google-chrome - 谷歌浏览器 Cookie 扩展 : "Cannot call met

r - 如何对字符向量的每个元素中的字符进行排序?

php - 使用 Session 或 Cookie 登录