一个var和VAL定义在Scala之间的区别是什么
2个回答
展开全部
val表示不可重复赋值的变量,var表示可以重复赋值的变量。在项目中,如果变量不会再变化的话应该使用val以保证并发性。
import java.util.Date
object DatePrint {
def main(args: Array[String]): Unit = {for(i <- 1 to 10) {
val date = new Date;
timePrint(date);
Thread.sleep(1000);
}
}
def timePrint(t:Date): Unit = {
println("the current time is " + t);
}
}
注意这个程序里面的date,虽然标注成了val,但每次for循环都会在堆内存中new一个对象,同时在栈内存中也分配一个变量叫date。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询