瘋狂kotlin講義連載之Kotlin的基礎類型-- Boolean型

布爾型只有一個Boolean類型,用於表示邏輯上的「真」或「假」。與Java相似,Kotlin的 Boolean類型的值只能是true或false,不能用0或者非0來表明。其餘數據類型的值也不能轉換成Boolean類型。html

例如,下面代碼定義了兩個Boolean類型的變量,並指定初始值。編程

程序清單:codes\02\2.7\BooleanTest.ktapp

fun main(args: Array<String>) {ide

// 定義b1的值爲truepost

var b1 : Boolean = truespa

// 定義b2的值爲falsecode

var b2 : Boolean = falseorm

}cdn

字符串"true"和"false"不會直接轉換成Boolean類型,但Boolean類型的變量一樣能夠「插值」到字符串中。看下面代碼(程序清單同上): xml

// 將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月發售 敬請期待
往期連載
第一期: 第一期:juejin.im/post/59c0b7…

第二期:juejin.im/post/59c1d6…

第三期:juejin.im/post/59e407…

第四期:juejin.im/post/59ed77…

第五期:juejin.im/post/59eec3…

第六期:juejin.im/post/59effb…

第七期:juejin.im/post/59f153…

第八期:juejin.im/post/59f283…

第九期:juejin.im/post/59f686…

第十期:juejin.im/post/59f7ea…

相關書籍《瘋狂Android講義》https://item.jd.com/11689014.html
相關文章
相關標籤/搜索