Kotlin编程条件控制示例详解

目录

本文总览

1. When 表达式

2. If 表达式

总结

本文总览

本篇来看看 Kotlin的条件控制,这一节知识点 建议与Java中的条件结构类比,会很好理解并记住。

1. When 表达式

在 Kotlin 用 when 来定义多个分支的条件表达式。Kotlin中这个语法与 java 中的 switch 语句非常类似。代码块的执行就是将参数与所有的分⽀条件顺序⽐较,直到满⾜某个分⽀条件:(示例 )

when (x) { 1 -> print("x == 1") 2 -> print("x == 2") else -> { print("x is neither 1 nor 2") } }

以上示例中,如果都不满足确切值的分支,将会执行 else 分支。

when 如果作为⼀个表达式使⽤, 常规情况是必须有 else 分⽀的。 但也有以下特例:

// 一个枚举对象 enum class Bit { ZERO, ONE } val numericValue = when (getRandomBit()) { Bit.ZERO -> 0 Bit.ONE -> 1 // 'else' ... }

上面示例说明:编译器能够检测出所有的可能情况都已经覆盖,这种情况 是可以没有 else 分支的。

when 语句的分⽀条件可以⽤任意表达式(⽽不只是常量)来表示:

when (x) { s.toInt() -> print("s encodes x") else -> print("s does not encode x") }

when 语句还可以用于检测⼀个值在( in )或者不在( !in )⼀个区间或者集合中:

when (x) { in 1..10 -> print("x is in the range") in validNumbers -> print("x is valid") // 在集合中 !in 10..20 -> print("x is outside the range") // 不在范围内 else -> print("none of the above") }

从以上这些特性可知,when 是可以⽤来取代 if - else条件表达式的。

2. If 表达式

在 Kotlin 中, if 是⼀个表达式:会返回⼀个值。这样其实就不需要三元运算法:( 条件 ? 然后 : 否则 ),if 就可以担任同样的角色

val c = if (condition) a else b

使用 in 运算符来检测某个数字是否在指定区间内,区间格式为 x..y :

fun main() { val x = 5 val y = 9 if (x in 1..8) { println("x 在区间内") } }

若将if用作表达式,例如,用于返回其值或将其分配给变量,则else分支是强制性的。

if 表达式的分⽀可以是代码块:

val max = if (a > b) { print("Choose a") a } else { print("Choose b") b }

在Kotlin中,常用的 if 表达式

if表达式

if..else表达式

if..else if..else表达式

嵌套表达式

总结

本篇学习 kotlin 的 when表达式 和 if表达式,它与 Java 中 switch语句, if语句有这异曲同工之处。when 表达式和if 表达式常见使用方式,对以后的项目中逻辑处理有很大帮助

以上就是Kotlin编程条件控制示例详解的详细内容,更多关于Kotlin 条件控制的资料请关注易知道(ezd.cc)其它相关文章!

推荐阅读

    css如何实现旋转效果(代码示例)

    css如何实现旋转效果(代码示例),属性,元素,过渡效果,画中,控制,常用,CSS是应用广泛的网页样式设计语言,旋转是其中一个常用的效果。通过CSS实现旋

    递归函数代码示例

    递归函数代码示例,递归,函数,本文目录递归函数代码示例编写一个递归函数计算从1加到100的和c语言函数递归调用c语言类函数递归调用的简单

    PHP字典树|Trie树定义与实现方法示例

    PHP字典树|Trie树定义与实现方法示例,节点,单词,字符串,搜索,所,本文实例讲述了PHP字典树(Trie树)定义与实现方法。分享给大家供大家参考,

    3维家快捷键|3维家快捷键示例图

    3维家快捷键|3维家快捷键示例图,,1. 3维家快捷键示例图在ae中编辑图层区域按f4是显示3维层的快捷键,显示出来后图层名称后面有个类似方形的

    1、Kotlin - 1.3;

    1、Kotlin - 1.3;,编译器,函数,协程  经过长时间的测试,协程发布了稳定版本, 这意味着从Kotlin 1.3开始,语言支持和API完全稳定。 协程概

    3维家快捷键(3维家快捷键示例图)

    3维家快捷键(3维家快捷键示例图),1. 3维家快捷键示例图在ae中编辑图层区域按f4是显示3维层的快捷键,显示出来后图层名称后面有个类似方形

    最好的Java示例网站是什么?

    最好的Java示例网站是什么?,最好的Java示例网站是什么?,代码段,网站,最好的,示例,What are the best Java example sites?最好的Java示例网站