Scala中没有Java/C/C++中的break和continue这样的关键字来控制循环,而我们在写Scala/Spark的时候又经常需要用到这样的操作,那么该如何解决这个问题呢?其实通过Scala中的breakable()就可以解决,具体用法看如下例子。
//注意:要使用breakable需先导入此包
import scala.util.control.Breaks._;
object BreakableDemo {
def main(args: Array[String]): Unit = {
//此时相当于Java/C/C++中的break
breakable({
for (i <- 1 to 5) {
if (i % 5 == 0) {
break()
}
println(i)
}
})
//此时相当于Java/C/C++中的continue
for (i <- 1 to 5) {
breakable({
if (i % 2 == 0) {
break()
}
println(i)
}
)
}
}
}