3
這是美妙的分拆SO回答這裏: How do I break out of a loop in Scala?爲什麼Scala 2.8+中沒有「價值中斷」?
爲什麼斯卡拉2.8+不允許人們用一個值,這將成爲breakable
部分的價值突破?這往往是實際的。
即
var r= rnd.nextInt(sum)
breakable {
for((n,st) <- arr) {
if (r<n) break(st)
} else {
r -= n
}
}
,而不是(使用var
與現有的庫):
var r= rnd.nextInt(sum)
var dest: Station = null
breakable {
for((n,st) <- arr) {
if (r<n) { dest=st; break }
} else {
r -= n
}
}
dest
我可以提供這樣的功能自己,但只是想知道。
歇文檔是在這裏:http://www.scala-lang.org/api/current/index.html#scala.util.control.Breaks
將什麼類型的呢?如果你有'breakable {break => ...}(在這種情況下,它看起來像'callCC'),我可以看到它工作,但對於你的提議,我看不到任何將你傳遞給'break'的參數鏈接到'它生活在其中。 –