Sobes.tech
Junior

Se poate modifica un anumit caracter dintr-un șir?

sobes.tech AI

Răspuns de la AI

În Go, șirurile de caractere sunt imuabile. Pentru a modifica un caracter, trebuie să creezi un șir nou. Acest lucru se poate face convertind șirul într-o secțiune de octeți sau rune, modificând elementul necesar și apoi convertind înapoi în șir.

Exemplu cu o secțiune de octeți:

// Șirul original
s := "hello"

// Convertirea în secțiune de octeți
b := []byte(s)

// Modificarea caracterului
b[0] = 'H'

// Convertirea înapoi în șir
newS := string(b)

// newS devine acum "Hello"

Exemplu cu o secțiune de rune (pentru lucrul cu caractere Unicode):

// Șirul original cu caractere Unicode
s := "привет"

// Convertirea în secțiune de rune
r := []rune(s)

// Modificarea caracterului
r[0] = 'П'

// Convertirea înapoi în șir
newS := string(r)

// newS devine acum "Привет"

Utilizarea unei secțiuni de rune este preferabilă pentru a lucra corect cu caractere Unicode multibyte.