Les compétences et les exemples de conversion de données Golang sont partagés
Introduction :
Golang est un langage de programmation puissant qui fournit de nombreuses fonctions et techniques pratiques pour traiter divers types de données et conversions de formats. Cet article partagera quelques conseils pratiques pour la conversion de données dans Golang et fournira des exemples de code spécifiques.
1. Conversion entre chaînes et entiers
Dans Golang, la conversion entre chaînes et entiers est une exigence fréquemment rencontrée. Golang fournit le package strconv, dont les fonctions Atoi() et Itoa() peuvent facilement convertir des chaînes et des entiers les uns vers les autres.
package main import ( "fmt" "strconv" ) func main() { str := "123" num, err := strconv.Atoi(str) if err != nil { fmt.Println("转换失败:", err) return } fmt.Println("转换后的整数:", num) }
Résultat d'exécution :
Entier converti : 123
package main import ( "fmt" "strconv" ) func main() { num := 123 str := strconv.Itoa(num) fmt.Println("转换后的字符串:", str) }
Résultat d'exécution :
Chaîne convertie : 3
2.Conversion entre chaînes et nombres à virgule flottante
En plus de la conversion entre chaînes et nombres entiers, Golang fournit également des fonctions de conversion entre chaînes et nombres à virgule flottante. Il s'agit d'une fonction très utile dans les calculs de prix ou dans d'autres scénarios nécessitant des calculs précis.
package main import ( "fmt" "strconv" ) func main() { str := "3.14" num, err := strconv.ParseFloat(str, 64) if err != nil { fmt.Println("转换失败:", err) return } fmt.Println("转换后的浮点数:", num) }
Résultat d'exécution :
Numéro à virgule flottante converti : 3.14
package main import ( "fmt" "strconv" ) func main() { num := 3.14 str := strconv.FormatFloat(num, 'f', -1, 64) fmt.Println("转换后的字符串:", str) }
Résultat d'exécution :
Chaîne convertie : 3.14
3. Conversion entre tranches et chaînes
La conversion entre tranches et chaînes est également l'une des opérations courantes dans Golang. Nous pouvons convertir une chaîne en tranche et la modifier ; ou convertir une tranche en chaîne comme contenu de sortie ou de stockage.
package main import ( "fmt" ) func main() { str := "hello" slice := []byte(str) slice[0] = 'H' fmt.Println("转换后的切片:", slice) }
Résultat d'exécution :
Tranche convertie : [72 101 108 108 111]
package main import ( "fmt" ) func main() { slice := []byte{'H', 'e', 'l', 'l', 'o'} str := string(slice) fmt.Println("转换后的字符串:", str) }
Résultat d'exécution :
Chaîne convertie : Bonjour
4. Conversion entre d'autres types de données
En plus de la conversion entre des chaînes, des entiers et des nombres à virgule flottante, Golang fournit également des fonctions de conversion entre certains autres types de données, tels que les booléens et les caractères. Conversion entre chaînes, conversion entre heure et chaîne, etc. .
package main import ( "fmt" "strconv" ) func main() { b := true str := strconv.FormatBool(b) fmt.Println("转换后的字符串:", str) str2 := "true" bool, err := strconv.ParseBool(str2) if err != nil { fmt.Println("转换失败:", err) return } fmt.Println("转换后的bool:", bool) }
Résultat d'exécution :
Chaîne convertie : vrai
Bool converti : vrai
package main import ( "fmt" "time" ) func main() { now := time.Now() str := now.Format("2006-01-02 15:04:05") fmt.Println("转换后的字符串:", str) str2 := "2022-01-01 12:00:00" time, err := time.Parse("2006-01-02 15:04:05", str2) if err != nil { fmt.Println("转换失败:", err) return } fmt.Println("转换后的时间:", time) }
Résultat d'exécution :
Converti chaîne : 2022-06-20 09:54:36
Heure de conversion : 2022-01-01 12:00:00 +0000 UTC
Résumé :
Cet article présente quelques techniques pratiques de conversion de données dans Golang et fournit des exemples de code spécifiques. . Grâce à ces techniques, nous pouvons facilement convertir entre différents types de données et améliorer la flexibilité et la réutilisabilité du code. J'espère que les lecteurs pourront utiliser ces techniques dans le développement réel pour améliorer l'efficacité du travail.
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!