0

假设我有一个 String 类型的 lazy val :

    类 LazyVals {

     lazy val message = "我很懒 + " + System.currentTimeMillis().toString    

     def changeLazy = { 消息 + “不是!!” }
    }

changeLazy 会改变消息的“只评估一次”性质吗?

4

1 回答 1

3

要计算的代码message将只评估一次。您无法更改此行为。

currentTimeMillis只会被调用一次。message + " Not!!"每次调用都会执行连接changeLazy,结果相同,但可以通过jvm.

于 2013-08-08T09:14:48.687 回答