第一周golang学习:--基本数据类型与string字符串类型之间的转换:
在程序开发中,我们经常需要将基本数据类型转换成string类型,或者将string类型转换成基本数据类型
一.基本数据类型转换成string类型
方式1:[推荐]
fmt.Sprintf("%参数",表达式) #推荐用这个
函数说明:
https://studygolang.com/pkgdoc
func Sprintf
func Sprintf(format string, a ...interface{}) string
Sprintf根据format参数生成格式化的字符串并返回该字符串。
示例:
func main() {
var i int=12
//var f1 float32 =12.35
var t1 bool=true
//var s1="hello world!"
str1:=fmt.Sprintf("is number: %d",i) //结果“is number: 12”
fmt.Println(str1)
strboor:=fmt.Sprintf("is bool: %t",t1) //结果“is number: 12”
fmt.Println(strboor)
fmt.Printf("%T",strboor) //string 类型是字符类型
}
实际示例:拼接一个网站的字符串,后续操作网站的字符串
addr:=fmt.Sprintf("http://127.0.0.1/api/list/%d/index.html",i) //结果http://127.0.0.1/api/list/12/index.html
fmt.Println(addr)
方式2:
使用strconv包的函数,系列的具体可参见
func FormatInt
func FormatInt(i int64, base int) string
返回i的base进制的字符串表示。base 必须在2到36之间,结果中会使用小写字母'a'到'z'表示大于10的数字。
func FormatFloat
func FormatFloat(f float64, fmt byte, prec, bitSize int) string
函数将浮点数表示为字符串并返回。
bitSize表示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控制精度(排除指数部分):对'f'、'e'、'E',它表示小数点后的数字个数;对'g'、'G',它控制总的数字个数。如果prec 为-1,则代表使用最少数量的、但又必需的数字来表示f。
可以去上面的连接查询中文的转换使用。