【发布时间】:2014-12-16 00:23:42
【问题描述】:
我想要这样的东西:
private val cachedResponse = mutable.Option.empty[A]
def get: A = cachedResponse getOrElseUpdate db.findModel()
def update: Unit = {
db.updateModel
cachedResponse.empty() // set it to None/Option.empty
}
我不是在寻找基于通用 HashMap 的记忆 like this。我尝试使用 var Option[A] 来实现它,但对我来说它看起来并不习惯:
private var cachedResponse: Option[A] = None
def get: A = cachedResponse getOrElse {
cachedResponse = Option(db.findModel())
cachedResponse.get
}
def update: Unit = {
db.updateModel
cachedResponse = None
}
【问题讨论】:
-
快速谷歌搜索发现这个实现看起来像你想要的......:blog.adamdklein.com/?p=689
标签: scala scala-collections scala-option