go语言中的布尔类型有两个常量值:true
和false
。布尔类型经常用在条件判断语句,或者循环语句,也可用在逻辑表达式中。
布尔类型
package main
import "fmt"
func main() {
var b1 bool = true
var b2 bool = false
var b3 = true
var b4 = false
//常用,短变量赋值方式
b5 := true
b6 := false
fmt.Printf("b1: %v\n", b1) //b1: true
fmt.Printf("b2: %v\n", b2) //b2: false
fmt.Printf("b3: %v\n", b3) //b3: true
fmt.Printf("b4: %v\n", b4) //b4: false
fmt.Printf("b5: %v\n", b5) //b5: true
fmt.Printf("b6: %v\n", b6) //b6: false
}
用在条件判断中
package main
import "fmt"
func main() {
//用在条件判断中,if
age := 16
if age >= 18 {
fmt.Println("你已经成年了")
} else {
fmt.Println("你还未成年")
}
/* //解析写法二,不常用的格式
age := 16
r := age >= 18 //r: false
fmt.Printf("r: %v\n", r)
if r {
fmt.Println("你已经成年了")
} else {
fmt.Println("你还未成年") //你还未成年
} */
}
用在循环语句中
package main
import "fmt"
func main() {
//for
count := 10
for i := 0; i < count; i++ {
fmt.Printf("i=%v\n", i) //i=1 ... i=9
fmt.Printf("i: %v\n", i) //i:1 ... i:9
}
}
用在逻辑表达式中
package main
import "fmt"
func main() {
//逻辑表达式
age := 18
gender := "男"
if age >= 18 && gender == "男" {
fmt.Println("你是成年男子") //你是成年男子
}
}
注意:不能使用
0
和非0
表示真假
package main
func main() {
//逻辑表达式不能使用0和非0表示真假
i := 1
if i {
//编译错误
}
}