深色模式
Go语言之rune类型
rune
类型是int32
类型的别名,因此,rune类型(泛指)是特殊的整数类型。
一个rune值表示一个Unicode码点
一般说来,我们可以将一个Unicode码点看作是一个Unicode字符。 但是,我们也应该知道,有些Unicode字符由多个Unicode码点组成。 每个英文或中文Unicode字符值含有一个Unicode码点。
rune的字面量表示
一个rune字面量由若干包在一对单引号中的字符组成。 包在单引号中的字符序列表示一个Unicode码点值。 rune字面量形式有几个变种,其中最常用的一种变种是将一个rune值对应的Unicode字符直接包在一对单引号中。比如:
Go
'a' // 一个英文字符
'π'
'众' // 一个中文字符
下面这些rune字面量形式的变种和'a'
是等价的 (字符a
的Unicode值是97)。
Go
'\141' // 141是97的八进制表示
'\x61' // 61是97的十六进制表示
'\u0061'
'\U00000061'
注意:
\
之后必须跟随三个八进制数字字符(0-7)表示一个byte值,
\x
之后必须跟随两个十六进制数字字符(0-9,a-f和A-F)表示一个byte值,
\u
之后必须跟随四个十六进制数字字符表示一个rune值(此rune值的高四位都为0),
\U
之后必须跟随八个十六进制数字字符表示一个rune值。
这些八进制和十六进制的数字字符序列表示的整数必须是一个合法的Unicode码点值,否则编译将失败。