在Golang中将int32转换为字符串的几种方法

最近刚在从PHP转GO,在使用中发现强类型语言真是啰嗦~~,2个值做对比时要先注意他们的类型.如果一个string与一个in32不能直接对比.先要转换类型  

如果使用Itoa需要一个int,使用FormatInt需要一个int64,

最简单的方法是使用fmt.Sprint(int32),但效率比较低

1,fmt.Sprint(i) 比较慢

func Sprint(a ...interface{}) string {
    p := newPrinter()
    p.doPrint(a)
    s := string(p.buf)
    p.free()
    return s
}

2,strconv.Itoa(int(i)) 

func Itoa(i int) string {
    return FormatInt(int64(i), 10)
}

3,strconv.FormatInt(int64(i), 10)

func FormatInt(i int64, base int) string {
    _, s := formatBits(nil, uint64(i), base, i < 0, false)
    return s
}

你可能感兴趣的:(golang)