条件变量设置

时间:2012-11-19 14:02:52

标签: scala conditional immutability

我需要根据条件设置变量。但由于变量是不可变的,我发现自己陷入了不得不重复代码的困境。我想做的是:

def doSomething(x:Int):Int = {
  if(x==1){
    val player="Andy"
  } else {
    val player="Rob"
  }
  getSomeValue(player) // Another function
}

但变量“玩家”已不在范围内。我看到的唯一方法是在两个条件块中调用函数“getSomeValue”,但这不是我想做的事情。如何使用不可变变量解决这个问题?

1 个答案:

答案 0 :(得分:24)

def doSomething(x:Int):Int = {
  val player = if(x==1){
    "Andy"
  } else {
    "Rob"
  }
  getSomeValue(player)
}