ZetCode

Kotlin true 关键字

最后修改于 2025 年 4 月 19 日

Kotlin 的布尔系统为逻辑运算提供了基本的 true/false 值。true 关键字表示正布尔值。本教程将通过示例深入探讨 true 关键字。

基本定义

Kotlin 中的 true 关键字是两个布尔字面量之一(与 false 一起)。它表示布尔逻辑中的真条件。这些值用于控制流语句和逻辑运算。

简单的布尔赋值

true 最基本的使用方法是将其赋值给一个布尔变量。这将创建一个始终评估为 true 的变量,除非被更改。

SimpleBoolean.kt
package com.zetcode

fun main() {

    val isKotlinFun: Boolean = true
    
    if (isKotlinFun) {
        println("Kotlin is fun!") // Output: Kotlin is fun!
    }
}

在这里,我们声明一个布尔变量 isKotlinFun 并为其赋值 true。然后 if 语句检查此值并执行 print 语句,因为条件为真。

条件语句中的布尔值

true 值在 if、while 和 when 等控制流语句中至关重要。这些语句评估布尔表达式以确定执行路径。

Conditional.kt
package com.zetcode

fun main() {

    val shouldContinue = true
    
    while (shouldContinue) {
        println("Looping...")
        break // Prevent infinite loop
    }
}

此示例显示了一个 while 循环,该循环将一直持续,只要 shouldContinue 为 true。我们包含一个 break 语句以防止在此演示中出现无限循环。

布尔返回值

函数通常返回布尔值以指示成功/失败或其他二进制条件。true 关键字用于返回一个正结果。

ReturnBoolean.kt
package com.zetcode

fun isEven(number: Int): Boolean {
    return number % 2 == 0
}

fun main() {

    println(isEven(4)) // Output: true
    println(isEven(5)) // Output: false
}

当输入数字为偶数时,isEven 函数返回 true。这演示了布尔返回值如何指示程序逻辑中的特定条件。

布尔值在逻辑运算中

true 值参与逻辑运算,例如 AND、OR 和 NOT。这些运算组合或反转布尔值以形成复杂的条件。

LogicalOps.kt
package com.zetcode

fun main() {

    val a = true
    val b = false
    
    println(a && b) // Output: false (AND)
    println(a || b) // Output: true (OR)
    println(!a)     // Output: false (NOT)
}

此示例演示了 truefalse 值之间的基本逻辑运算。结果遵循标准的布尔逻辑规则,其中 AND 要求两个操作数都为 true,OR 要求其中一个为 true,而 NOT 则反转。

布尔值在 When 表达式中

Kotlin 的 when 表达式可以直接使用布尔值作为条件。这提供了一种干净的方式来处理多个基于布尔值的案例。

WhenExpression.kt
package com.zetcode

fun describeBoolean(value: Boolean): String {
    return when (value) {
        true -> "It's true!"
        false -> "It's false!"
    }
}

fun main() {

    println(describeBoolean(true))  // Output: It's true!
    println(describeBoolean(false)) // Output: It's false!
}

describeBoolean 函数使用 when 表达式根据输入的布尔值返回不同的字符串。当处理代码中的布尔标志时,这种模式很常见。

布尔属性

在 Kotlin 中,属性可以是布尔值,通常遵循“is”命名约定。这些通常用于表示对象状态或特征。

BooleanProperty.kt
package com.zetcode

class User(val name: String, val isAdmin: Boolean)

fun main() {

    val user1 = User("Alice", true)
    val user2 = User("Bob", false)
    
    if (user1.isAdmin) {
        println("${user1.name} is an admin") // Output: Alice is an admin
    }
}

User 类具有一个布尔属性 isAdmin,指示管理员状态。我们可以在控制流语句中检查此属性,以在应用程序中实现基于角色的逻辑。

布尔默认值

在 Kotlin 中,没有显式初始化的布尔属性和变量默认为 false。但是,您可以在需要时将它们显式设置为 true

DefaultBoolean.kt
package com.zetcode

class FeatureToggle {
    var isEnabled = true // Default to enabled
}

fun main() {

    val toggle = FeatureToggle()
    println("Feature is enabled: ${toggle.isEnabled}") // Output: true
    
    toggle.isEnabled = false
    println("Feature is enabled: ${toggle.isEnabled}") // Output: false
}

此示例显示了一个默认启用(true)的功能切换。然后,我们可以在程序执行期间根据需要修改此值。这种模式在配置系统中很常见。

布尔逻辑的最佳实践

来源

Kotlin 布尔值文档

本教程深入介绍了 Kotlin 的 true 关键字,展示了它在变量、控制流、函数和逻辑运算中的用法。了解布尔逻辑是编写清晰有效的 Kotlin 代码的基础。

作者

我叫 Jan Bodnar,是一位充满激情的程序员,拥有多年的编程经验。自 2007 年以来,我一直在撰写编程文章。到目前为止,我撰写了 1400 多篇文章和 8 本电子书。我有超过八年的编程教学经验。

列出 所有 Kotlin 教程