Kotlin学习--控制语法之when
来源:互联网 发布:spss预测后显示数据 编辑:程序博客网 时间:2024/05/15 22:39
when将参数和分支条件进行顺序比较,直到某个分支满足条件!
像if一样, when即可作为语句,也可作为表达式!
如果when作为表达式, 则符合条件的分支值就是整个表达式值, 如果都不满足则会求值else分支;
如果when作为表达式,显然必需要有else分支, 除非编译器检测出已覆盖所有可能分支!
when语句取代了类C语言/java的switch语句:
when (x) {
1 -> print(“x == 1”)
2 -> print(“x == 2”)
else -> { // 注意这个块
print(“x is neither 1 nor 2”)
}
}
1.多个分支代码相同,可放在一起,用逗号分隔:
when (x) {
0, 1 -> print(“x == 0 or x == 1”)
else -> print(“otherwise”)
}
2.可用任意表达式(不只是常量)作为分支条件:
when (x) {
parseInt(s) -> print(“s encodes x”)
else -> print(“s does not encode x”)
}
3.可检测一个值在(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”)
}
4.可检测一个值是(is)或不是(!is)某种类型:
fun hasPrefix(x: Any) = when(x) {
is String -> x.startsWith(“prefix”)
else -> false
}
5.取代 if-else if 链
如果没有参数,则分支条件结果是 Boolean 类型
when {
x.isOdd() -> print(“x is odd”)
x.isEven() -> print(“x is even”)
else -> print(“x is funny”)
}
- Kotlin学习--控制语法之when
- Kotlin学习---控制语法之if语句
- Kotlin语言学习之when表达式使用
- Kotlin语法基础之控制流
- Kotlin基础语法之控制流
- Kotlin 学习之控制流
- Kotlin学习笔记之基础语法一
- kotlin 官方学习教程之基础语法
- kotlin 官方学习教程之语法
- Kotlin学习笔记之基础语法
- Kotlin 官方学习教程之控制流
- Kotlin学习之-4.3.3 控制流
- Kotlin学习--控制语句之for语句
- Kotlin学习笔记(3)-when
- Kotlin语法基础,控制流
- Kotlin 基础语法学习
- 【Kotlin】基础语法学习
- kotlin基础语法学习
- Pycharm运行加载文本出现错误
- PHP&javascript常用内置函数 记录(1)
- Unity3d 空间变换中齐次矩阵的w小秘密
- 第十二周——项目一—最短路径(4)Floyd算法验证(每对顶点之间的最短路径)
- 第十四周项目一(2)——验证算法之直接插入排序
- Kotlin学习--控制语法之when
- 基于SSH框架全注解简单实例
- Python 利用numpy高性能计算
- 选择法排序
- MSYQL 取拼音首字母
- 牛客 拜访
- 线性代数总结
- SpringMvc最全的约束——你的感冒清个人总结
- iOS 图标上下浮动的动画效果