我是一个scala初学者,并试图了解val如何在Scala中工作.我读到vals无法修改.当我执行以下操作时:
for( line <- Source.fromFile(args(0)).getLines() ) {
val currentLine = line
println(currentLine)
}
Run Code Online (Sandbox Code Playgroud)
currentLine在每次迭代中都会更新,而我希望它可以用第一行初始化并保持到最后,或者至少给出某种重新初始化错误.为什么会这样?是否在每次迭代中创建并销毁了val?我的第二个问题:如果在下面的代码中我想使用x outside.
if( some condition is satisfied) val x = 2 else val x = 3
Run Code Online (Sandbox Code Playgroud)
截至目前,我正在收到"非法表达简单表达"错误.有没有办法在外面使用x?
scala ×1