Convertir int32 en chaîne dans Golang
Convertir int32 en chaîne dans Golang peut être simple avec une solution concise : fmt.Sprint(i) . Cependant, si cette méthode directe n'est pas suffisante, plusieurs options de conversion sont disponibles :
Les tests de performances indiquent que la fonction de conversion personnalisée (String) est la plus efficace, suivi de strconv.FormatInt, strconv.Itoa et fmt.Sprint.
Voici un extrait de code illustrant la comparaison :
<code class="go">package main import ( "fmt" "strconv" "time" ) func main() { var s string i := int32(-2147483648) t := time.Now() for j := 0; j < 50000000; j++ { s = String(i) //s = String2(i) // Other conversion functions can be used here } fmt.Println(time.Since(t)) fmt.Println(s) } func String(n int32) string { // Custom conversion function buf := [11]byte{} pos := len(buf) i := int64(n) signed := i < 0 if signed { i = -i } for { pos-- buf[pos], i = '0'+byte(i%10), i/10 if i == 0 { if signed { pos-- buf[pos] = '-' } return string(buf[pos:]) } } }</code>
En fin de compte, le meilleur choix dépend des exigences spécifiques et les contraintes de performances de votre application.
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!