0

代码片段:

object WTF extends App {
    test
    val mymap = Map("Alice" -> 1, "Bob" -> 2, "Charlie" -> 3, "Dave" -> 4)
    println("outter mymap="+mymap)
    def test { println("inner mymap="+mymap) }
}

产生以下输出:

inner mymap=null
outter mymap=Map(Alice -> 1, Bob -> 2, Charlie -> 3, Dave -> 4)
  1. 为什么inner先于outter打印?

  2. 为什么测试打印一个空的 mymap?

  3. DelayedInit 在 2.9.2 上是否损坏,除了删除“扩展应用程序”并编写我自己的主要方法之外,是否有办法初始化内部 mymap?

4

1 回答 1

-1

问题解决了:

object WTF extends App {
    val mymap = Map("Alice" -> 1, "Bob" -> 2, "Charlie" -> 3, "Dave" -> 4)
    println("outter mymap="+mymap)
    test
    def test { println("inner mymap="+mymap) }
}
于 2012-11-23T23:34:29.213 回答