Kotlin If … Else
Kotlin 条件与 If..Else
Kotlin 支持数学中常见的逻辑条件:
- 小于: a < b
- 小于等于: a <= b
- 大于: a > b
- 大于等于: a >= b
- 等于: a == b
- 不等于: a != b
您可以使用这些条件为不同的决定执行不同的操作。
Kotlin 有以下条件:
- 如果指定的条件为 true,则使用
if
指定要执行的代码块 - 如果相同条件为 false,则使用
else
指定要执行的代码块 - 如果第一个条件为 false,则使用
else if
指定要测试的新条件 - 如果要执行许多可选代码块,则使用
when
指定要执行的代码块
备注: 与 Java 不同,if..else 可以在 Kotlin 中用作语句或表达式(为变量赋值)。请参阅页面底部的示例,以便更好地理解它。
Kotlin if
如果条件为 true
,则使用 if
指定要执行的代码块。
语法
if ( condition ) {
// 如果条件为 true,则要执行的代码块
}
if
是小写字母。如果使用大写字母(If 或 If)将产生错误。在下面的示例中,我们测试两个值,以确定 20 是否大于 18。如果条件为 true
,则打印一些文本:
实例
fun main() {
if (20 > 18) {
println("20 大于 18")
}
}
我们还可以测试变量:
实例
fun main() {
val x = 20
val y = 18
if (x > y) {
println("x 大于 y")
}
}
实例解释:
在上面的例子中,我们使用两个变量 x 和 y 来测试 x 是否大于 y(使用 >
运算符)。因为 x 是 20,y 是 18,我们知道 20 大于 18,所以我们在屏幕上打印 "x 大于 y"。
Kotlin else
如果条件为 false
,则使用 else
指定要执行的代码块。
语法
if ( condition ) {
// 如果条件为 true,则要执行的代码块
} else {
// 如果条件为 false,则要执行的代码块
}
实例
fun main() {
val time = 20
if (time < 18) {
println("Good day.")
} else {
println("Good evening.")
}
}
实例解释:
在上面的例子中,时间(20)大于 18,所以条件为 false
,所以我们转到 else
条件并在屏幕上打印 "Good evening"。如果时间少于 18,程序将打印 "Good day"。
Kotlin else if
如果第一个条件为 false
,则使用 else if
指定新条件。
语法
if ( condition1 ) {
// 如果条件 1 为 true,则执行的代码块
} else if ( condition2 ) {
// 如果条件 1 为 false,条件 2 为 true,则要执行的代码块
} else {
// 如果条件 1 为 false,条件 2 为 false,则要执行的代码块
}
实例
fun main() {
val time = 22
if (time < 10) {
println("Good morning.")
} else if (time < 20) {
println("Good day.")
} else {
println("Good evening.")
}
}
实例解释:
在上面的示例中,时间(22)大于 10,因此 第一个条件 为 false。else if
语句中的下一个条件也是 false
,因此我们转到 else
条件,因为 条件1 和 条件2 都是 false
,并打印到屏幕上 "Good evening"。
然而,如果时间是 14,我们的程序将打印 "Good day"
Kotlin If..Else 表达式
在 Kotlin 中,还可以使用 if..else
语句作为表达式(为变量赋值并返回):
实例
fun main() {
val time = 20
val greeting = if (time < 18) {
"Good day."
} else {
"Good evening."
}
println(greeting)
}
if
用作表达式时,还必须包含 else
(必需)。注意:当 if
只有一条语句时,可以使用大括号 {}
:
实例
fun main() {
val time = 20
val greeting = if (time < 18) "Good day." else "Good evening."
println(greeting)
}
提示:这个例子类似于 Java 中的 "三元运算符"(缩写 if…else)。