Junior
É possível alterar um caractere específico numa string?
sobes.tech IA
Resposta da IA
As cadeias em Go são imutáveis. Não é possível modificar diretamente um carácter individual numa cadeia existente.
Para obter uma cadeia modificada, deve criar uma nova:
- Converter a cadeia numa fatia de runas (
[]rune). - Alterar o elemento na fatia.
- Converter a fatia de runas de volta para uma cadeia.
// s - cadeia original
s := "hello"
// Converter a cadeia para []rune
r := []rune(s)
// Alterar a runa no índice
r[0] = 'ц' // Substituir 'h' por 'ц'
// Converter de volta para cadeia
newString := string(r)
// newString será "цеllo"
Outra forma, menos flexível mas possível em casos simples, é a concatenação de cadeias.
// s - cadeia original
s := "hello"
// Criar uma nova cadeia concatenando subcadeias e o carácter necessário
newString := string(s[0]) + "ц" + s[2:] // Exemplo: alterar o segundo carácter
// newString será "hцllo"