Используя 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)
}