这篇文章主要为大家介绍了Kotlin编程条件控制示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
本文总览
本篇来看看 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 条件控制的资料请关注编程学习网其它相关文章!
本文标题为:Kotlin编程条件控制示例详解
基础教程推荐
- Flutter手势密码的实现示例(附demo) 2023-04-11
- Flutter绘图组件之CustomPaint使用详解 2023-05-12
- iOS开发教程之XLForm的基本使用方法 2023-05-01
- Android多返回栈技术 2023-04-15
- IOS应用内跳转系统设置相关界面的方法 2022-11-20
- 解决Android Studio突然不显示logcat日志的问题 2023-02-04
- android studio按钮监听的5种方法实例详解 2023-01-12
- IOS 播放系统提示音使用总结(AudioToolbox) 2023-03-01
- Android中的webview监听每次URL变化实例 2023-01-23
- Android开发使用RecyclerView添加点击事件实例详解 2023-06-15
