Golang-数据类型-字符类型

基本介绍

  Golang 中没有专门的字符类型,如果要存储单个字符(字母),一般使用 byte 来保存。

  字符串就是一串固定长度的字符连接起来的字符序列。Go 的字符串是由单个字节连接起来的。也就是说对于传统的字符串是由字符组成的,而 Go 的字符串不同,它是由字节组成的。

案例演示

  

  对上面代码说明
  1)如果我们保存的字符在 ASCII 表的,比如[0-1, a-z,A-Z..]直接可以保存到 byte
  2)如果我们保存的字符对应码值大于 255,这时我们可以考虑使用 int 类型保存
  3)如果我们需要安装字符的方式输出,这时我们需要格式化输出,即 fmt.Printf(“%c”, c1)..


字符类型使用细节
  1)字符常量是用单引号('')括起来的单个字符。例如:var c1 byte = 'a' var c2 int = '中' var c3 byte = '9'
  2)Go 中允许使用转义字符 '\’来将其后的字符转变为特殊字符型常量。例如:var c3 char = ‘\n’
  // '\n'表示换行符
  3)Go 语 言 的 字 符 使 用 UTF-8 编 码 , 如 果 想 查 询 字 符 对 应 的 utf8 码 值
  http://www.mytju.com/classcode/tools/encode_utf8.asp
  英文字母-1 个字节 汉字-3 个字节
  4)在 Go 中,字符的本质是一个整数,直接输出时,是该字符对应的 UTF-8 编码的码值。
  5)可以直接给某个变量赋一个数字,然后按格式化输出时%c,会输出该数字对应的 unicode 字符  

  

  6)字符类型是可以进行运算的,相当于一个整数,因为它都对应有 Unicode 码

  

字符类型本质探讨
  1)字符型 存储到 计算机中,需要将字符对应的码值(整数)找出来存储:字符--->对应码值 >二进制-->存储
  读取:二进制----> 码值 ----> 字符 --> 读取
  2)字符和码值的对应关系是通过字符编码表决定的(是规定好)
  3)Go 语言的编码都统一成了 utf-8。非常的方便,很统一,再也没有编码乱码的困扰了

猜你喜欢

转载自www.cnblogs.com/Essaycode/p/12640233.html