Maison >développement back-end >Golang >Comment formater au mieux les nombres à virgule flottante sous forme de chaînes dans Go ?
Meilleures pratiques pour formater les nombres à virgule flottante sous forme de chaînes dans Go
Lorsque vous travaillez avec des nombres à virgule flottante dans Go, il est souvent nécessaire de convertir les transformer en chaînes pour les afficher ou les traiter. Cette tâche peut être accomplie en utilisant diverses approches, chacune avec ses propres avantages et inconvénients.
fmt.Sprintf
fmt.Sprintf est une fonction pratique pour formater un nombre à virgule flottante dans une chaîne. Il utilise le spécificateur de format %.2f pour contrôler le nombre de décimales :
var sResult1 string = fmt.Sprintf("%.2f", fResult)
strconv.FormatFloat
strconv.FormatFloat offre plus de flexibilité que fmt.Sprintf pour contrôler le formatage de la chaîne. Il accepte divers paramètres, dont la taille en bits (32 ou 64) de la valeur à virgule flottante :
var sResult2 string = strconv.FormatFloat(float64(fResult), 'f', 2, 32)
Recommandation
Pour les cas où la précision du formaté string est fixe, fmt.Sprintf ou strconv.FormatFloat peuvent être utilisés et ils produiront des résultats équivalents. Cependant, si la précision est variable, strconv.FormatFloat est plus pratique à utiliser.
Explication de la taille en bits
Le dernier argument de strconv.FormatFloat contrôle la façon dont la valeur est arrondi. Selon la documentation, il suppose que la valeur d'origine a été obtenue à partir d'une valeur à virgule flottante de la taille de bit spécifiée (32 pour float32, 64 pour float64).
Par conséquent, lorsque vous travaillez avec des valeurs float32, comme dans le exemple fourni, passer 32 est correct.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!