Golang基础语法:字符与字符串(三)
字符
字符基本介绍
? Golang中没有专门的字符类型,如果要存储单个字符(字母),一般使用byte来保存。这点不同于c和c++使用char来存储。
? Golang 使用的是UTF-8的Unicode编码,可以很方便地表示汉字,如果有小伙伴学过python就知道,python源代码上面总是有一行
? 字符串就是一串固定长度的字符连接起来的字符序列。Go的字符串是由单个字节连接起来的。也就是说对于传统的字符串是由字符组成的,而Go的字符串不同,它是由字节组成的。
以上代码输出为:
以上代码需要注意的是:
1、如果我们保存的字符在ASCII表的,比如[0-1, a-z,A-Z…]直接可以保存到byte
2、如果我们保存的字符对应码值大于255,这时我们可以考虑使用int类型保存
3、如果我们需要安装字符的方式输出,这时我们需要格式化输出,即
字符类型的使用细节
1、字符常量是用单引号(")括起来的单个字符。例如:
2、 Go中允许使用转义字符’ 来将其后的字符转变为特殊字符型常量。例如:
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语言的编码都统一成了
字符串string类型
基本结束
字符串就是一串固定长度的字符连接起来的字符序列。Go的字符串是由单个字节连接起来的。Go语言的字符串的字节使用
例如:
输出为:
string使用注意事项和细节
1、Go语言的字符串的字节使用
2、字符串一旦赋值了,字符串就不能修改了:在Go中字符串是不可变的。
3、字符串的两种表示形式
- 双引号,会识别转义字符.
- 反引号,以字符串的原生形式输出,包括换行和特殊字符,可以实现防止攻击、输出源代码等效果
例子:
4、字符串拼接方式
例子:
5、当一行字符串太长时,需要使用到多行字符串,可以如下处理
所有文章首发平台是微信公众号-极客印记,同步发布到CSDN,简书,掘金等平台博客–十安辰,喜欢的话,记得微信扫码关注我哦