6. 循环:while、for、break 与 continue
递归和 map/fold 之外,Dawn 也有普通循环:while 条件循环、for x in 列表、
for i in a..b(含 a 不含 b)。break 提前退出最内层循环,continue 跳到下一轮;
它们是 Never 类型的表达式,不能穿过 lambda 边界。
pub fn main() -> Unit !io = {
var sum = 0
for i in 0..5 {
if i == 3 { continue }
sum = sum + i
}
println("$sum")
var n = 0
while true {
n = n + 1
if n * n > 30 { break }
}
println("$n")
}
在 Playground 打开
7
6