我正在尝试使用泛型类型创建单例对象。
该对象没有通用类型,因此以下内容不会编译。
object SomeObj {
val dataStore = mutable.HashMap.empty[K, V]
def setPair[K, V](key: K, value: V): Option[V] = dataStore.set(key, value)
def getValue[K, V](key: K): Option[V] = dataStore.get(key)
}
代表某种数据存储的正确(标准方式)应该是其他程序组件共享的单个存储?
答案 0 :(得分:0)
只是一个想法,也许会有所帮助
导入scala.collection.concurrent.TrieMap
object Main {
class Dict[K, V] {
lazy val dictionary = Dictionary(new TrieMap[K, V]())
def getDictionary(): TrieMap[K, V] = this.dictionary.values
}
case class Dictionary[K, V](val values: TrieMap[K, V])
def main(args: Array[String]): Unit = {
val dictionary = new Dict[String, String]()
dictionary.getDictionary().put("one", "word")
dictionary.getDictionary().foreach(println)
}
}