Kotlin中的布爾值是一種數據類型,僅能存儲`true`或`false`兩種狀態,適用於表示二選一的情況,如開關或真假判斷。布爾類型可通過`Boolean`關鍵字聲明,並直接賦值為`true`或`false`。此外,Kotlin支持使用比較運算符創建布爾表達式,用於條件判斷。條件語句包括`if`、... ...
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
,關註後即可獲取最新文章推送
看完如果覺得有幫助,歡迎 點贊、收藏、關註