博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
疯狂kotlin讲义连载之Kotlin的基础类型-- Boolean型
阅读量:7047 次
发布时间:2019-06-28

本文共 1158 字,大约阅读时间需要 3 分钟。

布尔型只有一个Boolean类型,用于表示逻辑上的“真”或“假”。与Java类似,Kotlin的 Boolean类型的值只能是true或false,不能用0或者非0来代表。其他数据类型的值也不能转换成Boolean类型。

例如,下面代码定义了两个Boolean类型的变量,并指定初始值。

程序清单:codes\02\2.7\BooleanTest.kt

fun main(args: Array<String>) {

// 定义b1的值为true

var b1 : Boolean = true

// 定义b2的值为false

var b2 : Boolean = false

}

字符串"true"和"false"不会直接转换成Boolean类型,但Boolean类型的变量同样可以“插值”到字符串中。看下面代码(程序清单同上):

// 将Boolean类型的变量插值到字符串中

var str: String = "${b1}代表真"

println(str)

与前面介绍数值型、Char型类似的是,Boolean类型的变量不能接受null值,Boolean?类型的变量才能接受null值。Boolean类型将直接映射为Java的boolean基本类型,但Boolean?类型将会映射成boolean的包装类:Boolean。

Boolean类型的值或变量主要用作旗标来进行流程控制,在Kotlin语言中使用Boolean类型的变量或值控制的流程主要有如下几种。

  •  if条件控制语句。
  •  while循环控制语句。
  •  do while循环控制语句。

除此之外,Boolean类型的变量和值还可在三目运算符(? :)中使用。这些内容在3.9节将会有更详细的介绍。

如果程序在需要使用Boolean类型的地方使用了非Boolean值,Kotlin的类型检查机制会报错。下面例子会报告一个编译错误。

var i = 1

if (i) {

// 这个例子不能通过编译,会报错

}

下面例子则是正确的。

var i = 1

if (i == 1) {

// 这个例子可以通过编译,不会报错

}

上面程序中第一个例子if后面期望一个Boolean类型的值,但常量i是Int类型的,因此这个例子无法通过编译;对于i == 1比较的结果是Boolean类型,因此第二个例子可以通过编译检查。

以上内容节选自《疯狂Kotlin讲义》:一本让您最直接认识Kotlin的疯狂讲义

本书即将于2017年11月发售 敬请期待
往期连载
第一期:
第一期:

第二期:

第三期:

第四期:

第五期:

第六期:

第七期:

第八期:

第九期:

第十期:

相关书籍《疯狂Android讲义》https://item.jd.com/11689014.html

转载地址:http://fbkol.baihongyu.com/

你可能感兴趣的文章
LeetCode算法系列,持续更新中...
查看>>
localtime函数的死锁风险
查看>>
英伟达AI:修图软件千千万,效果最牛的还是我这款
查看>>
Java常用数据结构之List
查看>>
如何优雅使用Docker?请收下这15个快捷有效的小技巧
查看>>
MaxCompute重装上阵 第五弹 - SELECT TRANSFORM
查看>>
Web开发模式【Mode I 和Mode II的介绍、应用案例】
查看>>
一次生产的JVM优化
查看>>
RecyclerView的使用总结以及常见问题解决方案
查看>>
本地方法怎么映射Java层的数据类型
查看>>
自定义view之实现日历界面(一)
查看>>
如何实现 font-size 的响应式
查看>>
【从零开始学习Oracle数据库】(3)函数与子查询和连接查询
查看>>
给 Android 开发者的一点福利:免费模拟面试
查看>>
LeetCode Animation 题目图解汇总(持续更新中...)
查看>>
来个简单的事件委托 冒个泡
查看>>
设计模式系列·Facade模式之MVC的烦恼
查看>>
hadoop入门操作
查看>>
Node模块--child_process
查看>>
ATOM如何删除window边框,并且自定义样式
查看>>