0%

scala实现break和continue

需要util.control.Breaks._类的辅助

实现break与continue功能,都需要util.control.Breaks._类的辅助。不同的是,将整个循环的逻辑放在breakable方法中,在需要真正跳出循环的时候使用break方法,这样达到了跳出整个循环的目的。而continue功能是将breakable放在循环内,这样可以实现结束本次循环的目的而不是结束整个循环。

break

1
2
3
4
5
6
7
8
9
def breaktest() = {
val arr = Array(1, 2, 3, 4, 5, 6)
breakable {
arr.foreach { x =>
if (x > 3) break
else println(x)
}
}
}

continue

1
2
3
4
5
6
7
8
9
def continuetest() = {
val arr = Array(1, 2, 3, 4, 5, 6)
arr.foreach {
x => breakable {
if(x == 4) break
else println(x)
}
}
}