2
我遇到了一个奇怪的错误使用for循环。斯卡拉for循环奇怪
var verbose = true
for(i <- 0 to 1;
dummy = (if(verbose) println(s"i = $i") else());
jrange = (if(i==0) 1 to 5 else 1 to 7).filter(_%2 == 0);
dummy2 = (if(verbose) println(s"jrange = $jrange") else());
j <- jrange;
dummy3 = (if(verbose) println(s"j = $j") else());
k <- List()
) println("looping")
显示:
i = 0
jrange = Vector(2, 4)
i = 1
jrange = Vector(2, 4, 6)
j = 2
j = 4
j = 2
j = 4
j = 6
这是奇怪的事情是,永远不会执行第三的println当我== 0!你知道为什么吗?
它正好在输出中,'j = 2'和'j = 4'。或者你的意思是第四个'println'?你没有显示那个输出。 –