【发布时间】:2015-02-19 14:30:36
【问题描述】:
是否有本地方法来确保变量只能设置一次?
目前,我正在使用这种方法
class SetOnceVariable[T]
{
private var value : T = _
private var initialized = false
def apply(_v : T = _) : T =
{
if (value != null && !initialized) {
value = _v
initialized = true
}
value
}
}
class ClientInfo
{
val userIP : SetOnceVariable[String] = new SetOnceVariable[String]
}
【问题讨论】:
-
你能用
lazy val吗?您的变量何时设置和使用? -
不,我需要在任何时候设置用户IP
标签: scala