- Kotlin 教程
- Kotlin - 首页
- Kotlin - 概述
- Kotlin - 环境设置
- Kotlin - 架构
- Kotlin - 基本语法
- Kotlin - 注释
- Kotlin - 关键字
- Kotlin - 变量
- Kotlin - 数据类型
- Kotlin - 运算符
- Kotlin - 布尔值
- Kotlin - 字符串
- Kotlin - 数组
- Kotlin - 范围
- Kotlin - 函数
- Kotlin 控制流
- Kotlin - 控制流
- Kotlin - if...Else 表达式
- Kotlin - When 表达式
- Kotlin - For 循环
- Kotlin - While 循环
- Kotlin - Break 和 Continue
- Kotlin 集合
- Kotlin - 集合
- Kotlin - 列表
- Kotlin - 集合
- Kotlin - 地图
- Kotlin 对象和类
- Kotlin - 类和对象
- Kotlin - 构造函数
- Kotlin - 继承
- Kotlin - 抽象类
- Kotlin - 接口
- Kotlin - 可见性控制
- Kotlin - 扩展
- Kotlin - 数据类
- Kotlin - 密封类
- Kotlin - 泛型
- Kotlin - 委托
- Kotlin - 解构声明
- Kotlin - 异常处理
- Kotlin 有用资源
- Kotlin - 快速指南
- Kotlin - 有用资源
- Kotlin - 讨论
Kotlin - if...else 表达式
Kotlin if...else 表达式的工作方式与任何其他现代计算机编程语言中的 if...else 表达式类似。因此,让我们从 Kotlin 中提供的传统 if...else 语句开始。
语法
传统 if...else 表达式的语法如下所示
if (condition) { // code block A to be executed if condition is true } else { // code block B to be executed if condition is false }
此处执行 if 语句并检查给定的 condition。如果此条件计算结果为 true,则执行代码块 A,否则程序进入 else 部分并执行代码块 B。
示例
您可以尝试以下示例
fun main(args: Array<String>) { val age:Int = 10 if (age > 18) { print("Adult") } else { print("Minor") } }
运行上述 Kotlin 程序时,将生成以下输出
Minor
Kotlin if...else 表达式
Kotlin if...else 也可以用作表达式,该表达式返回值,并且此值可以分配给变量。以下是 Kotlin if...else 表达式的简单语法
语法
val result = if (condition) { // code block A to be executed if condition is true } else { // code block B to be executed if condition is false }
如果您将 if 用作表达式,例如,为了返回值或将其分配给变量,则 else 分支是必须的。
示例
fun main(args: Array<String>) { val age:Int = 10 val result = if (age > 18) { "Adult" } else { "Minor" } println(result) }
运行上述 Kotlin 程序时,将生成以下输出
Minor
当 if 只有一个语句时,您可以省略花括号 {}
fun main(args: Array<String>) { val age:Int = 10 val result = if (age > 18) "Adult" else "Minor" println(result) }
运行上述 Kotlin 程序时,将生成以下输出
Minor
您可以在 if...else 块中包含多个语句,在这种情况下,最后一个表达式将作为块的值返回。尝试以下示例
fun main(args: Array<String>) { val age:Int = 10 val result = if (age > 18) { println("Given condition is true") "Adult" } else { println("Given condition is false") "Minor" } print("The value of result : ") println(result) }
运行上述 Kotlin 程序时,将生成以下输出
Given condition is false The value of result : Minor
Kotlin if...else...if 阶梯
如果第一个条件为假,您可以使用 else if 条件来指定新的条件。
语法
if (condition1) { // code block A to be executed if condition1 is true } else if (condition2) { // code block B to be executed if condition2 is true } else { // code block C to be executed if condition1 and condition2 are false }
示例
fun main(args: Array<String>) { val age:Int = 13 val result = if (age > 19) { "Adult" } else if ( age > 12 && age < 20 ){ "Teen" } else { "Minor" } print("The value of result : ") println(result) }
运行上述 Kotlin 程序时,将生成以下输出
The value of result : Teen
Kotlin 嵌套 if 表达式
Kotlin 允许将一个 if 表达式放在另一个 if 表达式内部。这称为 嵌套 if 表达式
语法
if(condition1) { // code block A to be executed if condition1 is true if( (condition2) { // code block B to be executed if condition2 is true }else{ // code block C to be executed if condition2 is fals } } else { // code block D to be executed if condition1 is false }
示例
fun main(args: Array<String>) { val age:Int = 20 val result = if (age > 12) { if ( age > 12 && age < 20 ){ "Teen" }else{ "Adult" } } else { "Minor" } print("The value of result : ") println(result) }
运行上述 Kotlin 程序时,将生成以下输出
The value of result : Adult
测验时间 (面试及考试准备)
Q 1 - 关于 Kotlin if 表达式,以下哪一项是正确的?
A - Kotlin 支持传统的 if...else 表达式。
答案:D
解释
所有提到的语句关于 Kotlin if 表达式都是正确的。
答案:B
解释
Kotlin 不支持 if...then...else 语句。
Q 3 - 以下代码的输出是什么?
fun main(args: Array<String>) { var x = 20 var y = 15 var z = "Mango" val result = if (x > y ) { z = "Orange" } else { z = "Apple" } println("Value of result = $z") }
答案:B
解释
正确答案是 Orange,因为 x 大于 y,所以一旦此条件为真,它就会将 Orange 分配给 z 变量。