如何检查Scala中是否存在变量



我想检查一个变量是否已经在scala中定义/存在。让我们说一个叫做checkVar的函数做这个操作:

var x = 10

checkVar (x)→返回boolean True

checkVar (y)→返回boolean False

我问这个问题是因为我想创建一个机制来定义一个变量,如果它不存在。

变量仅在编译时存在,因此您不能在运行时动态创建或删除变量。因此,xy必须在编译时定义,否则编译器将拒绝代码。

你能做的是使用Option来指示变量是否有:

def checkVar(v: Option[Int]) = v.nonEmpty
var x = Some(10)
checkVar(x) // True
val y = None
checkVar(y) // False
x = None
checkVar(x) // False

最新更新