Kotlin 布林值教程:深入理解與應用示例

小万哥丶發表於2024-08-05

Kotlin 布林值

在程式設計中,您經常需要一種只能有兩個值的資料型別,例如:

  • 是 / 否
  • 開 / 關
  • 真 / 假

為此,Kotlin 有一種布林資料型別,可以取 truefalse 值。

布林值

布林型別可以用 Boolean 關鍵字宣告,並且只能取 truefalse 值:

示例

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 

布林表示式

布林表示式返回一個布林值:truefalse

您可以使用比較運算子,例如大於(>)運算子,來判斷表示式(或變數)是否為真:

示例

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 是小寫字母。大寫字母(IfIF)會產生錯誤。

在下面的示例中,我們測試兩個值以確定 20 是否大於 18。如果條件為 true,列印一些文字:

示例

if (20 > 18) {
  println("20 大於 18")
}

我們還可以測試變數:

示例

val x = 20
val y = 18
if (x > y) {
  println("x 大於 y")
}

示例解釋

在上面的示例中,我們使用兩個變數 xy 來測試 x 是否大於 y(使用 > 運算子)。由於 x20y18,並且我們知道 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."

示例解釋

在上面的示例中,time20)大於 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."

示例解釋

在上面的示例中,time22)大於 10,因此第一個條件為 false。在 else if 語句中的下一個條件也為 false,因此我們轉到 else 條件,因為 condition1condition2 都為 false,並在螢幕上列印 "Good evening"

然而,如果 time14,我們的程式會列印 "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,關注後即可獲取最新文章推送

看完如果覺得有幫助,歡迎 點贊、收藏、關注

相關文章