Sobes.tech
Junior

É possível alterar um carácter específico numa string?

sobes.tech IA

Resposta da IA

Em Go, as strings são imutáveis. Para alterar um caractere, é necessário criar uma nova string. Isso pode ser feito convertendo a string em uma fatia de bytes ou runas, modificando o elemento necessário e depois convertendo de volta para uma string.

Exemplo com uma fatia de bytes:

// String original
s := "hello"

// Converter para uma fatia de bytes
b := []byte(s)

// Alterar o caractere
b[0] = 'H'

// Converter de volta para string
newS := string(b)

// newS agora é "Hello"

Exemplo com uma fatia de runas (para trabalhar com caracteres Unicode):

// String original com caracteres Unicode
s := "привет"

// Converter para uma fatia de runas
r := []rune(s)

// Alterar o caractere
r[0] = 'П'

// Converter de volta para string
newS := string(r)

// newS agora é "Привет"

O uso de uma fatia de runas é preferível para trabalhar corretamente com caracteres Unicode multibyte.