前面的内容中经常出现T%,d%等符号,关于这些符号的含义
格式化指令 | 含义 |
%% | %字面量 |
%b | 一个二进制整数,将一个整数格式化为二进制表达方式 |
%c | 一个unicode的字符 |
%d | 10进制数值 |
%o | 8进制数值 |
%x | 小写的16进制 |
%X | 大写的16进制 |
%U | 一个unicode表示法表示的整形码值 |
go语言中每个字符可以使用单引号''来创建,字符串支持切片操作,但是需要注意的是,如果字符串都是有ASCII字符组成的,那可以随便使用切面进行操作,但是如果字符串包含其他非ASCII字符,直接使用切片获取想要的单个字符是应十分小心,因为对字符串直接可以使用切片是通过字符进行索引的,但是非ASCII字符在内存中可能不是有一个字节组成的
布尔值,真或假布尔值可以true 或者false, var b bool =true
go语言中的布尔类型其他编程语言基本一致,关键bool,可赋值为true或者false,默认false
v := true
x :=(1==2)也可以让go语言编译器推导bool类型
布尔类型无法被其他类型赋值,也不支持类型转换,go语言是有ture flase两个值,不支持0 1
可以通过推导的方式让编译器再编译或者程序运行时推导布尔变量的值,只要推导表达式中两个值的类型相同就可以使用相等== 或者不等 !=等运算法进行比较,返回一个bool值
package main
import (
"fmt"
"os"
)
func main() {
var User = os.Getenv("user")
fmt.Println(os.Getenv("GOPATH"))
fmt.Println(os.Getenv("GOROOT"))
var b bool
b = (1 != 0)
u := ("user" == User)
fmt.Println(u, b)
}
布尔型的常量和变量也可以通过逻辑运算符结合来产生一个另外的布尔值,这样的逻辑语句本身而言,并不是一个完整的go语言
逻辑值可以被用于条件结构中的条件语句,以便测试某个条件满足,另外&&或者||!= 是二元运算符,!是意愿运算符,在接下来的内容中,会使用T来代表条件符合的语句,F代表条件不符合的语句
go语言中包含以下逻辑运算符
!T -> !F 非运算符用于取得和布尔值相反的结果
&& 只有两边的值都为T时,和运算符的结果才是true
|| 有真就true
go语言中,&& ||具有快捷性质的运算法,当运算符左边表达式的值已经能够决定整个表达式的值时,多条件判断
利用托号同样可以升级某个表达式的运算优先级,在格式化输出时,可以使用%t来表示要输出的值为布尔型
对于布尔值的好的命名能够很好的提升代码的可读性,