在像这样的地图上迭代时:
val powers = Map("Spark man" -> "Electricity", "Bubble man" -> "Fires Bubbles", "Guts man" -> "No idea")
println(powers.size)
println(powers.foreach(man => println(man._1 + " -> " + man._2)))
为什么它在印刷时似乎会产生第四件:
3
Spark man -> Electricity
Bubble man -> Fires Bubbles
Guts man -> No idea
()
最后一行的牙套是使我感到困惑的零件。
您可能会告诉我我对语言很陌生,所以这可能很简单,但是我似乎找不到与此有关的东西。
您在最后一行 2 println 's
println(powers.foreach(man => println(man._1 + " -> " + man._2)))
内部println
正在打印3人行,外部线正在打印()
powers.foreach(man => println(man._1 + " -> " + man._2)
返回类型Unit
的值 - 此值显示为()
。
您正在打印此值以及地图中的每个对,因此您的代码实际上与
相同val u: Unit = powers.foreach(man => println(man._1 + " -> " + man._2)
println(u)