总结了golang中字符串和各种int类型之间的相互转换方式:
string转成int:
int, err := strconv.Atoi(string)
string转成int64:
int64, err := strconv.ParseInt(string, 10, 64)
string转float
float,_ = strconv.ParseFloat(string,64)
string转bool
bool,_ = strconv.ParseBool(string)
int转成string:
string := strconv.Itoa(int)
int64转成string:
string := strconv.FormatInt(int64,10)
注意事项:
使用strconv包的函数,先导入strconv包,会返回两个值,第一个是value,第二个是error,一个是报错,报错不需要用_忽略掉,%v-按原类型输出
string类型转基本数据类型能够转成有效数据
如将hello转成int,不会报错,直接显示默认值0
如将hello转成bool,不会报错,直接显示默认值false
ParseBool(变量名),(值,报错)
ParseInt(变量名,显示进制(10进制),多少位(int8/16/32/64)),(值-int64,报错)
ParseFloat(变量名,位数flaot32/64),(值float64,报错)
整数型(int、有符号(int8/1字节、int16/2字节、int32/4字节、int64/8字节)、无符号(uint、uint8、uint16、uint32、uint64))
int–根据系统位数自动定义,系统是32位,则为int32,系统是64位,则位int64
uint–根据系统位数自动定义,系统是32位,则为uint32,系统是64位,则位uint64
- 浮点型:由符号位+指数位+位数位组成,分为float32,float64
尾数位可能会丢失,造成精度损失,不受操作系统的影响,声明默认为64位
有两种显示方式:科学计数:534e3等价于534*10的3次方,534e-3等价于534/10的3次方,e不区分大小写;小数时前面0可不写
- 尔型:只能是true,false,占用一个字节