Golang est un tout nouveau langage de programmation. Il est conçu comme un langage compilé statique hautes performances et est principalement utilisé pour développer des scénarios d'application tels que des backends Web, des serveurs réseau et des systèmes distribués. Dans Golang, la conversion est une opération très courante qui permet de convertir un type de données en un autre type de données ou de convertir des données d'un format à un autre. Cet article présentera l'API de conversion dans Golang pour aider les lecteurs à mieux comprendre et utiliser Golang.
1. Conversion de type de données de base
Golang implémente la conversion entre les types de données de base en utilisant des opérateurs de conversion de type. Pour tous les types de données de base T et U, s'il existe des règles de conversion entre T et U, vous pouvez utiliser T(value) pour convertir la valeur du type U en type T. Par exemple, convertissez une valeur de type int en valeur de type float64 :
var a int = 1
var b float64 = float64(a)
ci-dessus Dans le Par exemple, float64(a) est utilisé pour convertir la valeur de la variable entière a en valeur de la variable à virgule flottante b.
Dans Golang, les types de données de base peuvent être divisés en quatre catégories : entier, virgule flottante, complexe et booléen. Les types entiers incluent int8, int16, int32, int64 et uint8, uint16, uint32, uint64, etc., et ils peuvent être convertis les uns dans les autres.
Voici des exemples de conversions entre certains types de données de base :
var a int = 1
var b int64 = int64(a)
var c float32 = float32(b)
var d bool = false
var e string = strconv.FormatBool(d)
Dans l'exemple ci-dessus, utilisez int64(a) Convertissez la valeur de la variable entière a à la valeur de la variable b de type int64 ; utilisez float32(b) pour convertir la valeur de la variable b de type int64 en valeur de la variable c de type float32 ; utilisez strconv.FormatBool(d) pour convertir la valeur ; de variable booléenne La valeur de d est convertie en valeur de la variable e de type chaîne.
2. Conversion de tableaux et de tranches
Dans Golang, les tableaux et les tranches sont deux expressions différentes de types de tableaux. Pour un tableau, sa longueur et son type d'élément sont fixes, et la longueur et le type d'élément du tableau doivent être spécifiés lors de la définition. Une tranche est un tableau dynamique dont la longueur peut être modifiée à tout moment, ce qui en fait un type de tableau plus flexible.
Dans Golang, nous pouvons convertir un tableau en tranche en utilisant des fonctions intégrées. À ce stade, les éléments de la tranche partageront le même tableau sous-jacent que le tableau d'origine. Il est également possible d'utiliser une tranche pour initialiser une nouvelle tranche.
Voici quelques exemples de conversions entre tableaux et tranches :
var arr [3]int = [...]int{1, 2, 3} // Define un tableau contenant 3 entiers
var s1 []int = arr[:] //Convertit le tableau en tranche A ce moment, la longueur de s1 est de 3 et la capacité est de 3
var s2 [. ]int = []int{4, 5, 6} // Définit une tranche contenant 3 entiers
var s3 []int = make([]int, 3) // Utilisez la fonction make pour créer une tranche contenant 3 entiers La tranche de
Dans l'exemple ci-dessus, utilisez arr[:] pour convertir le tableau arr en tranche s1 ; utilisez []int{4, 5, 6} pour initialiser une nouvelle tranche s2 ; ; utilisez la fonction make Créer une tranche s3 contenant 3 entiers.
3. Conversion de chaîne
String est un type de données de base dans Golang et l'un des types de données les plus couramment utilisés. Dans Golang, le type de chaîne utilise le codage UTF-8 et chaque caractère est une séquence d'octets.
Pour les types de chaîne, vous pouvez convertir le type de chaîne en d'autres types de données en utilisant les fonctions du package strconv. Les fonctions couramment utilisées incluent : strconv.Atoi, strconv.ParseFloat, strconv.ParseInt, strconv.ParseUint, strconv.FormatBool, strconv.FormatFloat, strconv.FormatInt, etc.
Voici quelques exemples de conversion de chaîne :
var str string = "123"
var a int = strconv.Atoi(str) // Convertir la chaîne Convertir en type entier
var str1 string = "3.14"
var b float64 = strconv.ParseFloat(str1, 64) // Convertir une chaîne en type à virgule flottante
var c int64 = strconv.ParseInt(str2, 10, 64) // Convertit la chaîne en un entier décimal
Dans l'exemple ci-dessus, utilisez strconv.Atoi pour convertir la chaîne Convertir la valeur de la variable str de type dans la valeur de la variable entière a ; utilisez strconv.ParseFloat pour convertir la valeur de la variable str1 de type chaîne en valeur de la variable b de type virgule flottante ; utilisez strconv.ParseInt pour convertir la valeur de la variable str2 ; du type chaîne La valeur est convertie en valeur de la variable entière c ; utilisez strconv.ParseBool pour convertir la valeur de la variable de type chaîne str3 en valeur de la variable booléenne d.
L'API de conversion dans Golang est largement utilisée dans divers scénarios d'application. La maîtrise de ces API est très utile pour l'apprentissage et l'application de Golang. Lorsque vous utilisez l'API de conversion, vous devez respecter les principes de sécurité et d'efficacité, en particulier lors de la conversion de divers types de données en types de chaînes, en faisant attention au maintien de l'intégrité et de l'exactitude des données. Dans le même temps, afin d'améliorer l'efficacité de la programmation, il est recommandé de maîtriser diverses API de conversion et de les utiliser de manière flexible en combinaison avec des scénarios d'application réels.
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!