Conversion de Float64 en Int dans Go : une approche élégante
Lorsque vous travaillez avec des valeurs à virgule flottante dans Go, la tâche de les convertir en des entiers peuvent apparaître. Bien que le package strconv offre une conversion entre les chaînes et différents types de données, il lui manque une conversion directe entre les types non-chaînes.
Conversion directe avec Int Cast
Une solution élégante est pour utiliser l'opérateur de conversion int. Il convertit en toute sécurité une variable float64 en la représentation entière la plus proche. Prenons l'exemple ci-dessous :
import "fmt" func main() { var x float64 = 5.7 var y int = int(x) fmt.Println(y) // outputs "5" }
Dans ce code, nous créons une variable float64 x avec la valeur 5,7. La variable y est déclarée comme un int et reçoit la valeur de x à l'aide du cast int. Le résultat montre que y contient la valeur entière 5, tronquant efficacement la partie fractionnaire de x.
Comparaison avec Sprintf
Le cast int fournit une méthode directe et efficace pour conversion de float64 en int, éliminant ainsi le besoin de conversions de chaînes intermédiaires via fmt.Sprintf. Cette approche rationalise le processus de conversion et évite la perte potentielle de données due aux limitations arithmétiques à virgule flottante.
Conclusion
Pour des conversions pratiques et précises de float64 en int dans Go, l'opérateur int cast apparaît comme le choix optimal. Il offre une solution simple et efficace à cette tâche courante de conversion de données.
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!