Go语言入门之字符串

字符串介绍

字符串是一段不可变的字符序列,内容是任意内容,可以是一段文字也可以是一串数字,但是字符串类型数字不能进行数学运算,必须转换成整型或浮点型。
字符串类型关键字:string
创建字符串类型变量时,字符串两侧可以使用双引号括或返单引号起来。区别是双引号支持转义字符而单引号不支持转义字符,即反单引号中有什么内容输出的就是什么内容。所以在位字符串变量赋值时,我们最常用的是使用双引号“”。举例如下:
Go语言入门之字符串

字符串和数值转换

包strconv提供了字符串和其他类型相互转换的函数。(以字符串和数值类型相互转换为例)

1、将字符串类型的数字转换成整型

Go语言入门之字符串Go语言入门之字符串
第一个参数是需要转换的字符串变量;第二个参数是这个需要转换为int的字符串数字是几进制的,常用取值为2、8、10、16;第三个参数是你想转换的整数类型,常用取值是0、8、16、32、64 分别代表 int、int8、int16、int32、int64。
该函数有两个返回值,第一个是该函数最终转换的整数类型,必须是int64,实际的转换机制是将s先按照bitSize指定的类型转换然后转换成int64的类型(因此,第三个参数一般都设置成64);第二个返回值err是*NumErr类型的,如果语法有误,err.Error = ErrSyntax;如果结果超出类型范围err.Error = ErrRange。
还利用内置函数Atoi()将字符串数字转换成int类型。该函数认为字符串数字是十进制的。(常用)
Go语言入门之字符串

2、将整型转换为字符串类型

Go语言入门之字符串
另一种简写方法:常使用函数Itoa(),它是对十进制的int类型进行转换
Go语言入门之字符串

3、把string转换成floatxx类型

Go语言入门之字符串Go语言入门之字符串
第一个参数是需要进行转换的字符串;第二个参数是期望的转换类型32(float32)、64(float64).
2个返回值,第一个是函数指定的转换值必须是float64,第二个返回值err是*NumErr类型的,语法有误的,err.Error=ErrSyntax;结果超出表示范围的,返回值f为±Inf,err.Error= ErrRange。

4、把float类型转换成string类型

Go语言入门之字符串
Go语言入门之字符串
函数将浮点数表示为字符串并返回
float64表示f的来源类型(32:float32、64:float64),会根据此进行舍入。
fmt是转换后的表示格式:‘f’(-ddd.dddd)、‘b’(-ddddp±ddd,指数为二进制)、‘e’(-d.dddde±dd,十进制指数)、‘E’(-d.ddddE±dd,十进制指数)、‘g’(指数很大时用’e’格式,否则’f’格式)、‘G’(指数很大时用’E’格式,否则’f’格式)。
prec控制精度(排除指数部分),根据prec的值进行四舍五入:对’f’、‘e’、‘E’,它表示小数点后的数字个数;对’g’、‘G’,它控制总的数字个数。如果prec 为-1,则代表使用最少数量的、但又必需的数字来表示f。