Kotlin笔记 返回和跳转

kotlin有三种跳转方式

  • return 从最近的函数返回
  • break 终止最近的loop
  • continue 从最近的loop开始下一次循环

label

任何表达式都可以标上label,如abc@

loop@ for (i in 1..100) {
    for (j in 1..100) {
        if (...) break@loop
    }
}

从label退出

fun foo() {
    ints.forEach {
        if (it == 0) return
        print(it)
    }
}

以上从lambda函数退出时,是从foo退出了,如果要从lambda函数退出,则可以

fun foo() {
    ints.forEach lit@ {
        if (it == 0) return@lit
        print(it)
    }
}
//或者
fun foo() {
    ints.forEach {
        if (it == 0) return@forEach
        print(it)
    }
}
//或者写匿名函数

fun foo() {
    ints.forEach(fun(value: Int) {
        if (value == 0) return
        print(value)
    })
}

以下表示@a 返回,同时返回值是1

return@a 1
``

你可能感兴趣的:(Kotlin笔记 返回和跳转)