Junior — Middle
Explique o conceito de internamento de strings e por que é usado na programação.
sobes.tech IA
Resposta da IA
A internação de strings é o processo de armazenar uma única cópia de cada constante de string única na memória, para que todas as strings iguais referenciem o mesmo objeto.
Isto é usado para:
- Economia de memória, especialmente quando há muitas strings iguais.
- Aceleração das operações de comparação de strings — em vez de comparar caractere por caractere, basta comparar referências.
Em C#, a internção de strings é implementada através do método String.Intern(). Por exemplo:
string a = "hello";
string b = String.Intern(new string(new char[] { 'h', 'e', 'l', 'l', 'o' }));
bool sameReference = Object.ReferenceEquals(a, b); // true
Aqui, a e b apontam para a mesma string no pool de strings internadas.