F: Ich möchte in einer Zeichenfolge Kleinbuchstaben in Großbuchstaben umwandeln, aber Go gibt einen Fehler aus: „Zuweisung zu new_str[i] nicht möglich] ". Wie kann ich das erreichen?
In Go sind Strings unveränderlich, was bedeutet, dass ihr Inhalt nach der Erstellung nicht mehr geändert werden kann. Dieses Verhalten steht im Einklang mit der Go-Sprachspezifikation, in der es heißt:
„Strings sind unveränderlich: Einmal erstellt, ist es unmöglich, den Inhalt eines Strings zu ändern.“
Um einen String in Go zu ändern, haben Sie zwei Möglichkeiten:
Hier ist eine modifizierte Version Ihres Codes, die ein []Byte-Slice verwendet, um die Zeichen zu ändern.
<code class="go">package main import ( "bytes" "fmt" ) func ToUpper(str string) string { strBytes := []byte(str) for i := 0; i < len(str); i++ { if str[i] >= 'a' && str[i] <= 'z' { chr := uint8(rune(str[i]) - 'a' + 'A') strBytes[i] = chr } } return string(strBytes) } func main() { fmt.Println(ToUpper("cdsrgGDH7865fxgh")) } </code>
Das obige ist der detaillierte Inhalt von## Wie kann ich Kleinbuchstaben in einem Go-String in Großbuchstaben umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!