byte-rune

112 阅读1分钟

字符串中的每一个元素叫做“字符”,在遍历或者单个获取字符串元素时可以获得字符。

Go语言的字符有以下两种:

  • 一种是 uint8 类型,或者叫 byte 型,代表了 ASCII 码的一个字符。uint8的别名
  • 另一种是 rune 类型,代表一个 UTF-8 字符,当需要处理中文、日文或者其他复合字符时,则需要用到 rune 类型。rune 类型等价于 int32 类型。

var ch byte = 'A',字符使用单引号括起来。

image.png

Go语言同样支持 Unicode(UTF-8),因此字符同样称为 Unicode 代码点或者 runes,并在内存中使用 int 来表示。

image.png

image.png

rune是 int32的别名,几乎在所有方面等同于int32

它用来区分字符值和整数值

golang中的字符有两种,uint8(byte)代表ASCII的一个字符,rune代表一个utf-8字符

for采用byte类型循环,for range采用rune类型循环