`byte`与`rune`类型有一个共性,即:它们都属于别名类型。`byte`是`uint8`的别名类型,而`rune`则是`int32`的别名类型。 `byte`类型的值需用8个比特位表示,其表示法与`uint8`类型无异。因此我们就不再这里赘述了。我们下面重点说说`rune`类型。     一个`rune`类型的值即可表示一个Unicode字符。Unicode是一个可以表示世界范围内的绝大部分字符的编码规范 在Google上搜索。用于代表Unicode字符的编码值也被称为Unicode代码点。一个Unicode代码点通常由“U+”和一个以十六进制表示法表示的整数表示。例如,英文字母“A”的Unicode代码点为“U+0041”。 `rune`类型的值需要由单引号“'”包裹。例如,`'A'`或`'郝'`。这种表示方法一目了然。不过,我们还可以用另外几种形式表示`rune`类型值。请看下表。 ![](https://box.kancloud.cn/6403e08759073c5d37c21847a946a4a7_742x266.png)   大家需要根据实际情况选用上述表示法。在一般情况下,第一种表示法更为通用。因为它是最直观的。不过,在以其他几种方法表示的内容出现在屏幕上的时候,大家也要明白其含义。     另外,在`rune`类型值的表示中支持几种特殊的字符序列,即:转义符。它们由“\\”和一个单个英文字符组成。如下表所示。 ![](https://box.kancloud.cn/95fe6a51e199512dedd9da97cec597e6_740x716.png) ~~~ str := "abcdef" //string 转[]byte b := []byte(str) //[]byte转string str = string(b) //string 转 rune r := []rune(str) //rune 转 string str = string(r) ~~~