美文网首页
Kotlin核心教程:控制流

Kotlin核心教程:控制流

作者: 程序引力 | 来源:发表于2018-11-16 23:14 被阅读3次

Kotlin中的控制流由if,when,for,while所支持。

if

if可以作为语句(块),也可以作为表达式。

  • 语句块
// 传统用法
var max = a 
if (a < b) max = b

// With else 
var max: Int
if (a > b) {
    max = a
} else {
    max = b
}
  • 表达式
// 作为表达式
val max = if (a > b) a else b
// 代码块最后的值作为表达式的值
val max = if (a > b) {
    print("Choose a")
    a
} else {
    print("Choose b")
    b
}

若使用if作为表达式,则必须有else分支。

when

when用于代替switch,其参数会与分支参数顺序比较。when同样可以被作为语句或表达式。

when (x) {
    1 -> print("x == 1")
    2 -> print("x == 2")
    else -> { // 注意这个块
        print("x is neither 1 nor 2")
    }
}

同时支持同样处理方式的分支合并,分支表达式也可以是任意表达式(不必是常量):

when (x) {
    0, 1 -> print("x == 0 or x == 1")
    parseInt(s) -> print("s encodes x")
    else -> print("otherwise")
}

when也可以用来代替if-else链。即不提供参数,分支表达式以布尔表达式处理。

when {
    x.isOdd() -> print("x is odd")
    x.isEven() -> print("x is even")
    else -> print("x is funny")
}

对于Kotlin1.3,支持将when语句复制给变量。

相关文章

  • Kotlin核心教程:控制流

    Kotlin中的控制流由if,when,for,while所支持。 if if可以作为语句(块),也可以作为表达式...

  • 9.控制流(theControlFlow)

    控制流 kotlin_控制流 swift控制流

  • Kotlin 学习笔记(四)控制流

    Kotlin 学习笔记(四)控制流 这是一个Kotlin系列的教程,目的是为了使自己记忆和理解的更加深刻,将会添加...

  • Kotlin基础知识(三):控制语句

    链接:Kotlin——初级篇(四):控制语句详解连接:控制流:if、when、for、while - Kotlin...

  • Kotlin(控制流)

    流程控制: if , when , for , while if 表达式 在 Kotlin 中,if 是带有返回值...

  • Kotlin控制流

    表达式和语句的区别: 表达式有值,语句没有值, 能作为函数参数即为表达式,否则为语句。 C语言中的控制结构为语句。...

  • Kotlin 控制流

    和Java一样, Kotlin 支持常用的控制流: if else, for, while, when, brea...

  • Kotlin 控制流

    原文地址 If Expression(if表达式) 在Kotlin,if是一个表达式,也就是它返回一个值.因此这里...

  • kotlin控制流

    没有三目运算符? 因为if可以有返回值 没有switch case,替换成了when

  • kotlin控制流

    一:if表达式 在kotlin中if是表达式,它会返回一个值,所以kotlin中无需三元操作符,if的分之可以是代...

网友评论

      本文标题:Kotlin核心教程:控制流

      本文链接:https://www.haomeiwen.com/subject/lhgvfqtx.html