Pense em duas coisas distintas: Objeto e Refer�ncia em Mem�tia.
 
O objeto String s1 faz refer�ncia em mem�ria de um objeto com o conte�do "Minha String".
 
Quando voc� executa a linha  s1 = "Alterei o valor", voc� s� mudou a refer�ncia em mem�ria do objeto para um objeto com o conte�do "Alterei o valor".
 
O sin�nimo da linha
s1 = "Alterei o valor"
s1 = new java.lang.String("Alterei o valor");
 
Isto � s1 est� referenciando a um novo objeto com o conte�do "Alterei o valor".
 
 
Ser� que agora fica mais claro?
 
 
-----Mensagem Original-----
De: Rafael Steil
Enviado: ter�a-feira, 20 de agosto de 2002 15:45
Para: [EMAIL PROTECTED]
Assunto: Re: Fw: [java-list] Problema de IF
 

Bom, eu concordo que a documentacao diz isso, e ja fiz testes onde realmente
nao consegui alterar o valor de uma String. Mas entao porque o codigo

public class StringTest
{
public static void main(String args[])
{
String s1 = "Minha String";
System.out.println("s1: "+ s1);
s1 = "Alterei o valor";
System.out.println("s1 alerada: "+ s1);
}
}

mostra os valores "Minha String"  "Alterei o valor" ? ou seja, o valor da String foi
modificado. Isso me deixa um pouco confuso tmb..

Rafael Steil

> Ola...
> Como voce fez isso?  Acho que nao pode mudar o valor de uma String de jeito nenhum
> Se voce olhar o codigo fonte da classe java.lang.String, vai ver:
>
>     private char value[];
>

------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuarios Java da Sucesu-SP
dzvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------



Aproveite melhor a Web. Fa�a o download GR�TIS do MSN Explorer : http://explorer.msn.com.br/intl.asp#po

Responder a