Kotlin 布尔值教程:深入理解与应用示例
Kotlin 布尔值
在编程中,您经常需要一种只能有两个值的数据类型,例如:
- 是 / 否
- 开 / 关
- 真 / 假
为此,Kotlin 有一种布尔数据类型,可以取
true
或
false
值。
布尔值
布尔类型可以用
Boolean
关键字声明,并且只能取
true
或
false
值:
示例
val isKotlinFun: Boolean = true
val isFishTasty: Boolean = false
println(isKotlinFun) // 输出 true
println(isFishTasty) // 输出 false
就像您在前几章中学到的其他数据类型一样,上面的示例也可以在不指定类型的情况下编写,因为 Kotlin 足够智能,可以理解变量是布尔类型:
示例
val isKotlinFun = true
val isFishTasty = false
println(isKotlinFun) // 输出 true
println(isFishTasty) // 输出 false
布尔表达式
布尔表达式返回一个布尔值:
true
或
false
。
您可以使用比较运算符,例如大于(
>
)运算符,来判断表达式(或变量)是否为真:
示例
val x = 10
val y = 9
println(x > y) // 返回 true,因为 10 大于 9
或者更简单:
示例
println(10 > 9) // 返回 true,因为 10 大于 9
在下面的示例中,我们使用等于(
==
)运算符来评估表达式:
示例
val x = 10
println(x == 10) // 返回 true,因为 x 的值等于 10
示例
println(10 == 15) // 返回 false,因为 10 不等于 15
表达式的布尔值是所有 Kotlin 比较和条件的基础。
在下一章中,您将学习更多关于条件的内容。
Kotlin 条件和
If..Else
Kotlin 支持数学中的常见逻辑条件:
- 小于:
a < b
- 小于或等于:
a <= b
- 大于:
a > b
- 大于或等于:
a >= b
- 等于:
a == b
- 不等于:
a != b
您可以使用这些条件为不同的决策执行不同的操作。
Kotlin 有以下条件语句:
- 使用
if
指定在条件为
true
时要执行的一段代码 - 使用
else
指定在条件为
false
时要执行的一段代码 - 使用
else if
在第一个条件为
false
时测试新的条件 - 使用
when
指定多个替代代码块来执行
注意:与
Java
不同,
if..else
可以在 Kotlin 中用作语句或表达式(为变量赋值)。请参阅页面底部的示例以更好地理解它。
Kotlin
if
使用
if
指定在条件为
true
时要执行的一段代码。
语法
if (condition) {
// 如果条件为 true 要执行的代码块
}
注意,
if
是小写字母。大写字母(
If
或
IF
)会产生错误。
在下面的示例中,我们测试两个值以确定
20
是否大于
18
。如果条件为
true
,打印一些文本:
示例
if (20 > 18) {
println("20 大于 18")
}
我们还可以测试变量:
示例
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
使用
else
指定在条件为
false
时要执行的一段代码。
语法
if (condition) {
// 如果条件为 true 要执行的代码块
} else {
// 如果条件为 false 要执行的代码块
}
示例
val time = 20
if (time < 18) {
println("Good day.")
} else {
println("Good evening.")
}
// 输出 "Good evening."
示例解释
在上面的示例中,
time
(
20
)大于
18
,因此条件为
false
,因此我们转到
else
条件并在屏幕上打印
"Good evening"
。如果
time
小于
18
,程序会打印
"Good day"
。
Kotlin
else if
使用
else if
在第一个条件为
false
时指定一个新条件。
语法
if (condition1) {
// 如果 condition1 为 true 要执行的代码块
} else if (condition2) {
// 如果 condition1 为 false 且 condition2 为 true 要执行的代码块
} else {
// 如果 condition1 和 condition2 都为 false 要执行的代码块
}
示例
val time = 22
if (time < 10) {
println("Good morning.")
} else if (time < 20) {
println("Good day.")
} else {
println("Good evening.")
}
// 输出 "Good evening."
示例解释
在上面的示例中,
time
(
22
)大于
10
,因此第一个条件为
false
。在
else if
语句中的下一个条件也为
false
,因此我们转到
else
条件,因为
condition1
和
condition2
都为
false
,并在屏幕上打印
"Good evening"
。
然而,如果
time
是
14
,我们的程序会打印
"Good day"
。
Kotlin
If..Else
表达式
在 Kotlin 中,您还可以将
if..else
语句用作表达式(为变量赋值并返回):
示例
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
)。
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:
Let us Coding
,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注