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
,關注後即可獲取最新文章推送
看完如果覺得有幫助,歡迎 點贊、收藏、關注