golang的单引号双引号反引号

单引号Single quote,表示byte类型或rune类型,对应 uint8和int32类型,默认是 rune 类型。byte用来强调数据是raw data,而不是数字;而rune用来表示Unicode的code point。

双引号Double quote,表示字符串,实际上是字符数组。可以用索引号访问某字节,也可以用len()函数来获取字符串所占的字节长度。

反引号Back quote,表示字符串字面量,与双引号不同,它不支持任何转义序列,但支持换行书写。字面量 raw literal string 的意思是,你定义时写的啥样,它就啥样,你有换行,它就换行。你写转义字符,它也就展示转义字符。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
a := 'a'
b := "b\naa"
c := `c
3ww`
var d byte = 'd'
fmt.Println(b)
fmt.Println(c)
fmt.Printf("Single quote type:%T\n", a)
fmt.Printf("Double quote type:%T\n", b)
fmt.Printf("Back quote type:%T\n", c)
fmt.Printf("Single quote type:%T\n", d)


output:
------
b
aa
c
3ww
Single quote type:int32
Double quote type:string
Back quote type:string
Single quote type:uint8