Int32 in einen String in Golang konvertieren
Das Konvertieren von int32 in einen String in Golang kann mit einer prägnanten Lösung unkompliziert sein: fmt.Sprint(i) . Wenn diese direkte Methode jedoch nicht ausreicht, stehen mehrere Konvertierungsoptionen zur Verfügung:
Leistungsbenchmarks zeigen, dass die benutzerdefinierte Konvertierungsfunktion (String) am besten geeignet ist effizient, gefolgt von strconv.FormatInt, strconv.Itoa und fmt.Sprint.
Hier ist ein Codeausschnitt, der den Vergleich demonstriert:
<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>
Letztendlich hängt die beste Wahl von den spezifischen Anforderungen ab und Leistungseinschränkungen Ihrer Anwendung.
Das obige ist der detaillierte Inhalt vonWie kann ich int32 in Golang effizient in String konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!