Go を使用して、浮動小数点数を文字列にフォーマットする「最良の」方法を見つけようとしています。例を探しましたが、質問に具体的に答えるものは見つかりません。私がやりたいのは、浮動小数点数を文字列にフォーマットする「最良の」方法を使用することだけです。小数点以下の桁数は異なる場合がありますが、既知です (例: 2 または 4 または 0)。私が達成したいことの例を以下に示します。
以下の例に基づいて、fmt.Sprintf()
またはstrconv.FormatFloat()
または何か他のものを使用する必要がありますか?
そして、それぞれの通常の使用法とそれぞれの違いは何ですか?
また、現在 32 を使用している以下で 32 または 64 を使用することの重要性も理解していません。
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)
}