如何在 Scala Spark 中更新 if 语句中的 var?
How to update a var inside if-statement in Scala Spark?
我有一个跟踪变量,它应该表示我们是否已经到达嵌套 if-else 语句中的某个分支。这是一个简化的例子
var varChanged = false
if(true) {
var varChanged = true
}
varChanged //still returns false
我想更新 if 语句中 varChanged
的值。我应该怎么做呢?我不能将 if 语句用作 var varChanged = if(..)..
之类的表达式,因为我将它用作另一个 val 的表达式,而 varChanged
只是我需要的跟踪变量。
删除内部 var
关键字
var varChanged = false
if(true) {
varChanged = true
}
您通过在内部范围内再次声明来隐藏外部 varChanged
。
你真的应该尽可能避免使用 var
s。
我有一个跟踪变量,它应该表示我们是否已经到达嵌套 if-else 语句中的某个分支。这是一个简化的例子
var varChanged = false
if(true) {
var varChanged = true
}
varChanged //still returns false
我想更新 if 语句中 varChanged
的值。我应该怎么做呢?我不能将 if 语句用作 var varChanged = if(..)..
之类的表达式,因为我将它用作另一个 val 的表达式,而 varChanged
只是我需要的跟踪变量。
删除内部 var
关键字
var varChanged = false
if(true) {
varChanged = true
}
您通过在内部范围内再次声明来隐藏外部 varChanged
。
你真的应该尽可能避免使用 var
s。