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.