Go 语言系列6:布尔型
发布于 2021-11-18 17:34 ,所属分类:软件编程学习资料
关于 布尔(bool) 类型,无非就是两个值:true 或者 false 。
如果你学过 Python 就会知道真值用 True 表示,并且与 1 是相等的;而假值用 False 表示,并且与 0 相等。但是在 Go 中,真值是用 true 表示,并且 不与 1 相等;同样的,假值是用 false 表示,并且 不与 0 相等。从而在 Go 中不能像在 Python 中一样用布尔值和 0 或 1 进行比较。
所以,如果你像在 Go 中实现和 Python 类似的布尔值与 0 或 1 进行比较的功能,需要自己去实现相应的函数。下面提供了相应的两个函数供你参考。
//booltoint
funcbtoi(bbool)int{
ifb{
return1
}
return0
}
//inttobool
funcitob(iint)bool{
returni!=0
}
if 和 for 语句的条件部分都是布尔类型的值,并且 == 和 < 以及 > 等比较操作也会产生布尔型的值。一元操作符 ! 对应逻辑非操作,二元操作符 && 和 || 分别对应逻辑与和逻辑或操作。其中 && 的优先级比 || 高。下面是一个例子:
packagemain
import(
"fmt"
)
funcmain(){
a:=true
b:=false
fmt.Println("a=",a)
fmt.Println("b=",b)
fmt.Println("true&&false=",a&&b)
fmt.Println("true||false=",a||b)
}
该程序输出如下:
a=true
b=false
true&&false=false
true||false=true
其中 a 赋值为 true , b 赋值为 false 。a && b 仅当 a 和 b 都为 true 时,操作符 && 才返回 true 。a || b 仅当 a 或者 b 为 true 时,操作符 || 返回 true 。
参考文献:
[1] Alan A. A. Donovan; Brian W. Kernighan, Go 程序设计语言, Translated by 李道兵, 高博, 庞向才, 金鑫鑫 and 林齐斌, 机械工业出版社, 2017.


















![[视频教程] 尚硅谷 Go语言核心编程课程](https://static.kouhao8.com/sucaidashi/xkbb/5850341684cce785a9e4415a3755d65f.png?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)

![[视频教程] 尚硅谷 Go语言核心编程课程](https://static.kouhao8.com/sucaidashi/xkbb/f1d865b99f5d150a767ca3cc237e94c8.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)

![[后端开发] Google资深工程师深度讲解Go语言](https://static.kouhao8.com/sucaidashi/xkbb/49d4b8528a407349b65b347240e23e0b.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)


![[后端开发]Go语言实战流媒体视频网站](https://static.kouhao8.com/sucaidashi/xkbb/5ad4f6e16ce35cdca524d483c3ff194b.jpg?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)


![[人工智能] 最新编程语言 go语言下载 180多集的视频。从入门到精通](https://static.kouhao8.com/sucaidashi/xkbb/8071f94720e1e5eb8147a8bada7f1cea.png?x-oss-process=image/format,webp/resize,w_88/crop,w_88,h_88,g_nw)
相关资源