scala - 未初始化的变量声明

时间:2013-05-10 18:22:11

标签: scala

我的一个scala类中有一个变量,其值仅在调用特定方法时首次设置。方法参数值将是字段的初始值。所以我有这个:

classX {
  private var value: Int= _
  private var initialised = false

  def f(param: Int) {
    if (!initialised){
      value = param
      initialised = true
    }
  }
}

是否有更类似于scala的方法?选项看起来有点太麻烦......

1 个答案:

答案 0 :(得分:15)

实际使用Option不那么麻烦,因为value是否已初始化的问题可以从SomeNone的值中推断出来。 {1}}。这比使用标志更加惯用Scala。

Option