- Kotlin 教程
- Kotlin - 主页
- Kotlin - 概述
- Kotlin - 环境设置
- Kotlin - 架构
- Kotlin - 基本语法
- Kotlin - 评论
- Kotlin - 关键字
- Kotlin - 变量
- Kotlin - 数据类型
- Kotlin - 运算符
- Kotlin - 布尔值
- Kotlin - 字符串
- Kotlin - 数组
- Kotlin - 范围
- Kotlin - 函数
- Kotlin 控制流程
- Kotlin - 控制流
- Kotlin - if...Else 表达式
- Kotlin - When 表达式
- Kotlin - For 循环
- Kotlin - While 循环
- Kotlin - 中断并继续
- Kotlin 集合
- Kotlin - 集合
- Kotlin - 列表
- Kotlin - 集
- Kotlin - 地图
- Kotlin 对象和类
- Kotlin - 类和对象
- Kotlin - 构造函数
- Kotlin - 继承
- Kotlin - 抽象类
- Kotlin - 接口
- Kotlin - 可见性控制
- Kotlin - 扩展
- Kotlin - 数据类
- Kotlin - 密封类
- Kotlin - 泛型
- Kotlin - 委托
- Kotlin - 解构声明
- Kotlin - 异常处理
- Kotlin 有用资源
- Kotlin - 快速指南
- Kotlin - 有用的资源
- Kotlin - 讨论
Kotlin - 布尔值
很多时候我们会遇到需要做出“是”或“否”决定的情况,或者我们可以说“对”或“错”。为了处理这种情况,Kotlin 有一个布尔数据类型,它可以取值true或false。
Kotlin 也有一个可为 null 的对应布尔值?可以有空值。
创建布尔变量
可以使用Boolean关键字创建布尔变量,该变量只能采用true或false值:
例子
fun main(args: Array<String>) { val isSummer: Boolean = true val isCold: Boolean = false println(isSummer) println(isCold) }
当你运行上面的 Kotlin 程序时,它将生成以下输出:
true false
事实上,我们可以在不使用Boolean关键字的情况下创建 Kotlin 布尔变量,并且 Kotlin 会根据指定的值true或false来理解变量类型
Kotlin 布尔运算符
Kotlin为布尔变量提供了以下内置运算符。这些运算符也称为逻辑运算符:
操作员 | 姓名 | 描述 | 例子 |
---|---|---|---|
&& | 逻辑和 | 如果两个操作数都为 true,则返回 true | x && y |
|| | 逻辑或 | 如果任一操作数为 true,则返回 true | x|| y |
! | 逻辑非 | 将结果取反,如果操作数为 true,则返回 false | !X |
例子
以下示例展示了使用 Kotlin 逻辑运算符的不同计算:
fun main(args: Array<String>) { var x: Boolean = true var y:Boolean = false println("x && y = " + (x && y)) println("x || y = " + (x || y)) println("!y = " + (!y)) }
当你运行上面的 Kotlin 程序时,它将生成以下输出:
x && y = false x || y = true !y = true
Kotlin 布尔表达式
布尔表达式返回true或false值,主要用于使用if...else表达式检查条件。布尔表达式使用关系运算符,例如>、<、>=等。
fun main(args: Array<String>) { val x: Int = 40 val y: Int = 20 println("x > y = " + (x > y)) println("x < y = " + (x < y)) println("x >= y = " + (x >= y)) println("x <= y = " + (x <= y)) println("x == y = " + (x == y)) println("x != y = " + (x != y)) }
当你运行上面的 Kotlin 程序时,它将生成以下输出:
x > y = true x < y = false x >= y = true x <= y = false x == y = false x != y = true
Kotlin and() 和 or() 函数
Kotlin 提供了and()和or()函数来在两个布尔操作数之间 执行逻辑AND和逻辑OR运算。
这些函数不同于&&和|| 运算符,因为这些函数不执行短路求值,但它们始终对两个操作数求值。
fun main(args: Array<String>) { val x: Boolean = true val y: Boolean = false val z: Boolean = true println("x.and(y) = " + x.and(y)) println("x.or(y) = " + x.or(y)) println("x.and(z) = " + x.and(z)) }
当你运行上面的 Kotlin 程序时,它将生成以下输出:
x.and(y) = false x.or(y) = true x.and(z) = true
Kotlin 还提供not()和xor()函数分别执行逻辑NOT和XOR运算。
布尔值到字符串
您可以使用toString()函数将布尔对象转换为其等效的字符串表示形式。
在字符串变量中分配true或false值时,您将需要此转换。
fun main(args: Array<String>) { val x: Boolean = true var z: String z = x.toString() println("x.toString() = " + x.toString()) println("z = " + z) }
当你运行上面的 Kotlin 程序时,它将生成以下输出:
x.toString() = true z = true
测验时间(面试和考试准备)
问题 1 - 以下关于 Kotlin 布尔数据类型的说法哪一项是正确的?
答案:A
解释
Kotlin 布尔变量只能有 true 或 false 两个值
问题 2 - 以下程序的输出是什么:
fun main(args: Array<String>) { val x: Boolean = true var y: String y = x }
答案:C
解释
编译将因类型不匹配错误而停止,因为我们试图将布尔值存储到字符串变量中。在将布尔值分配给字符串变量之前,我们应该使用 toString() 将布尔值转换为字符串值。