介绍
这期内容当中小编将会给大家带来有关怎么在golang中将Int转换为字符串,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
什么是golang
golang是谷歌开发的一种静态强类型,编译型,并发型,并具有垃圾回收功能的编程语言,其语法与C语言相近,但并不包括如枚举,异常处理,继承,泛型、断言,虚函数等功能。
去语言内置Int字符串转至少有3种方式:
fmt.Sprintf (“% d", n) strconv.Itoa (n) strconv.FormatInt (n, 10)
下面针对这3中方式的性能做一下简单的测试:
package 了 import ( “fmt" “strconv" “testing" ) func BenchmarkSprintf (b * testing.B), { n :=10 b.ResetTimer () for 小姐::=,0;,小姐:& lt;, b.N;,我+ +,{ fmt.Sprintf (“% d",, n) } } func BenchmarkItoa (b * testing.B), { n :=10 b.ResetTimer () for 小姐::=,0;,小姐:& lt;, b.N;,我+ +,{ strconv.Itoa (n) } } func BenchmarkFormatInt (b * testing.B), { n :=, int64 (10) b.ResetTimer () for 小姐::=,0;,小姐:& lt;, b.N;,我+ +,{ strconv.FormatInt (n, 10) } }
保存文件为int2string_test。去
执行:
go test -v 板凳=只int2string_test.go -benchmem
美好:达尔文 goarch: amd64 BenchmarkSprintf-8 ,,,,, 20000000,,,,,,,,,,,,,,, 114, ns/op ,,,,,,,,,,,,, 16, B/op ,,,,,,,,, 2, alloc/op BenchmarkItoa-8 ,,,,,,,, 200000000,,,,,,,,,,,,,,,,, 6.33 ns/op ,,,,,,,,,,, 0, B/op ,,,,,,,,, 0, alloc/op BenchmarkFormatInt-8 ,,, 300000000,,,,,,,,,,,,,,,,, 4.10 ns/op ,,,,,,,,,,, 0, B/op ,,,,,,,,, 0, alloc/op 通过 ok ,,,,, command-line-arguments , 5.998年代
总体来说,strconv.FormatInt()效率最高,fmt.Sprintf()效率最低
<强>补充:Golang类型转换,整型转换成字符串,字符串转换成整型强>
看代码吧~
package 主要 , import ( ,“fmt" ,“reflect" ,“strconv" ) , func main (), { ,//字符串转成整型int 呃,num:=strconv.Atoi (“123”) ,if 犯错!=nil { 恐慌(err)才能 ,} ,fmt.Println (num reflect.TypeOf (num)) , ,//整型转换成字符串 ,str:=strconv.Itoa (123) ,fmt.Println (str reflect.TypeOf (str)) }
上述就是小编为大家分享的怎么在golang中将Int转换为字符串了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。