Bri*_* Oh 14 go

使用Go我试图找到将浮点数格式化为字符串的"最佳"方法.我找了一些例子但是找不到任何具体回答我的问题的东西.我想要做的就是使用"最佳"方法将浮点数格式化为字符串.小数位数可能会有所不同,但是已知(例如,2或4或零).我想要实现的一个例子如下.根据下面的例子,我应该使用fmt.Sprintf()或strconv.FormatFloat()还是其他什么?并且,每个的正常用法和每个之间的差异是什么?

我也不明白在下面使用32或64当前有32的重要性:

strconv.FormatFloat(float64(fResult), 'f', 2, 32)

例:

package main

import (
    "fmt"
    "strconv"
)

func main() {

    var (
        fAmt1 float32 = 999.99
        fAmt2 float32 = 222.22
    )

    var fResult float32 = float32(int32(fAmt1*100) + int32(fAmt2*100)) / 100

    var sResult1 string = fmt.Sprintf("%.2f", fResult)

    println("Sprintf value = " + sResult1)

    var sResult2 string = strconv.FormatFloat(float64(fResult), 'f', 2, 32)

    println("FormatFloat value = " + sResult2)

}