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'的参数链接到'它生活在其中。 –