有人可以在Predef对象中解释以下代码吗?谢谢.
scala.`package` // to force scala package object to be seen. scala.collection.immutable.List // to force Nil, :: to be seen.
0__.. 7
(链接).我只能猜测.当您使用单个对象作为表达式时,这与强制a的求值具有相同的效果lazy val
,换句话说,如果它尚未初始化,它将运行对象的主体.
例如:
object Foo { println("Foo is launching rockets...") }
现在你写的时候
Foo // prints `Foo is launching rockets...`
这强制评估内容Foo
.
所以我的猜测是,Predef
这只是确保scala
包对象中的某些东西List
被初始化.非常不可能你会打扰用户.