Maison > Article > développement back-end > Comment convertir des nombres en chaînes en langage Go
Comment convertir des nombres en chaînes dans le langage Go : créez d'abord un exemple de fichier go ; puis utilisez la méthode "strconv.Itoa" dans le package strconv pour convertir la valeur de type octet ou int en la représentation sous forme de chaîne de le numéro C'est tout.
L'environnement de cet article : Système Windows 7, version Go1.11.2, cet article est applicable à toutes les marques d'ordinateurs.
Tutoriel recommandé : "Tutoriel du langage Go"
La posture correcte pour convertir des nombres en chaînes dans Go
Dans de nombreux langages , vous pouvez facilement convertir n'importe quel type de données en chaîne en le concaténant avec une chaîne ou en utilisant une expression de conversion de type. Cependant, si vous essayez de faire quelque chose qui semble évident dans Go (comme convertir un int en chaîne), il est peu probable que vous obteniez l'effet souhaité.
Par exemple :
string(120)
Quel résultat espérez-vous obtenir ? Si vous avez de l'expérience avec d'autres langages de programmation, la plupart des gens pensent "123". En revanche, la conversion de type ci-dessus dans Go donnerait une valeur telle que "E", ce qui n'est pas du tout ce que nous voulons. Parce que string() convertira directement les octets ou les nombres en représentation UTF-8 des caractères.
Donc, la bonne façon de convertir une valeur de type octet ou int en une représentation sous forme de chaîne d'un nombre dans Go est d'utiliser la méthode du package strconv, telle que strconv.Itoa.
strconv.Itoa(120)// 返回"120"
Pour l'exemple ci-dessous, vous pouvez essayer de changer strconv.Itoa en string pour voir quel résultat vous obtenez.
package main import ( "fmt" "strings" "strconv" ) type IPAddr [4]byte func (p IPAddr) String() string { var ipParts []string for _, item := range p { ipParts = append(ipParts, strconv.Itoa(int(item))) } return strings.Join(ipParts, ".") } func main() { hosts := map[string]IPAddr{ "loopback": {127, 0, 0, 1}, "googleDNS": {8, 8, 8, 8}, } for name, ip := range hosts { fmt.Printf("%v: %v\n", name, ip) } }
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!