栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

Go 变量 字符类型

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Go 变量 字符类型

字符基本介绍

Golang中没有专门的字符类型,如果要存储单个字符(字母),一般使用byte(byte类型的范围是0-255,所以0-255字符都可以用byte来保存,经典的就是asii里面的字符都可以使用byte来保存)来保存。

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

当我们输出byte值的时候,就是输出了对应字符的码值。

	var c1 byte = 'a'
	var c2 byte = '0'
	fmt.Println(c1,c2)

97 48

如果想要输出对应的字符需要使用格式化输出即可%c

	fmt.Printf("%c  %c",c1,c2)

a  0

如果给了一个汉字会出错,因为对应的码值超出了0-255,byte是存储不进去的,使用int是可以存储进去的。

var c1 byte = '呗'
	c3 := []byte{97,48}
	fmt.Println(string(c3))

a0

对上面代码说明

1)如果我们保存的字符在 ASCⅡ表的,比如【0-1.a-z,A-Z.】直接可以保存到 byte

2) 如果我们保存的字符对应码值大于255,这时我们可以考虑使用 int类型保存

3)如果我们需要安装字符的方式输出,这时我们需要格式化输出,即 fmtPrintf("%c"c1).

字符类型使用细节

1) 字符常量是用单引号(")括起来的单个字符。例如∶var c1

byte='a'             var c2 int='中'            var c3 byte= 'g'

2)Go中允许使用转义字符''来将其后的字符转变为特殊字符型常量。

例如∶var c3 char ='n'    // 'n'表示换行符

3) Go语言的字符使用UTF-8编码,英文字母占有一个字节,汉字使用3个字节。

a := []byte("中")
for _,v := range a{
	fmt.Println(v)
}

fmt.Println(len(a))

228
184
173
3

4)在Go中,字符的本质是一个整数,直接输出时,是该字符对应的UTF-8编码的码值。

5)  可以直接给某个变量赋一个数字,然后按格式化输出时%c,会输出该数字对应的unicode 字符

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

字符类型本质探讨

1) 字符型存储到 计算机中,需要将字符对应的码值(整数)找出来

存储∶字符-->对应码值--->二进制->存储读取∶二进制--->码值--->字符-->读取

2) 字符和码值的对应关系是通过字符编码表决定的(是规定好)

3)Go语言的编码都统一成了utf-8。非常的方便,很统一,再也没有编码乱码的困扰了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/909176.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号