Caros amigos!
Estou lendo um livro sobre Java (Use a cabeça) e no apendice B, pag.464, tem o seguinte tópico:
Usa o seguinte código como exemplo:
String s = "0"
for (int i=1;x<10;x++) {
s = s + x;
}
O autor descreve que:
O problema:
… outro problema do reservatório de Strings é que o Coletor de Lixo não chega até lá. Portando em nosso exemplo, a menos que por
coincidência posteriormente você crie uma String chamada digamos, “01234”, as primeiras nove Strings criadas em nosso loop for ficarão
aguardando apenas disperdiçando memória.
Alternativa:
Quer dizer que não devo usar objetos do tipo String nos meus programas senão corro o risco de ficar sem memória?
Será que essas afirmações são válidas apenas para o escopo de existência da variável s?
Em que momento essas Strings são descartadas?
A quem puder esclarecer, antecipadamente agradeço.
