第一周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。

 可以去上面的连接查询中文的转换使用。