Scala中的lazy变量是一种延迟初始化的变量,它在第一次被访问时才会被初始化。
object LazyExample {
def main(args: Array[String]): Unit = {
lazy val expensiveOperation = {
println("Performing expensive operation...")
// 这里可以执行一些耗时的操作
42
}
println("Before accessing expensiveOperation")
println("The result of the expensive operation is: " + expensiveOperation)
println("After accessing expensiveOperation")
}
}
这个例子中,expensiveOperation被声明为一个lazy变量。当我们首次访问它时,它会执行括号内的代码块并返回结果。在这之后,再次访问expensiveOperation将直接返回之前计算的结果,而不会再次执行代码块。