Caro José,

       O Java trata todas as strings como objetos. Assim sendo, "abc" é
reconhecido pelo Java como um objeto String anônimo, que armazena o valor
"abc". Por questão de performance, o Java cria somente um objeto anônimo que
guarda o valor "abc".
     Na declaração, s1 e s2 são duas declarações de duas variáveis que fazem
referência a um objeto String. Note que tanto s1 quanto s2 fazem referência
ao mesmo objeto String anônimo. Assim sendo, if (s1 == s2) verifica se o
objeto referenciado por s1 é o mesmo referenciado por s2, o que é verdade!
:)

Um grande abraço,

        Luiz Reginaldo


----- Original Message -----
From: josesmg <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, January 24, 2002 2:51 PM
Subject: [java-list] String


> Para comparar uma String s1 com outra s2 eu devo usar o método equals.
>
> Porém eu com uma dúvida. Se eu defino s1 = "abc" e s2 = "abc" e faço
>
> if (s1 == s2) me retorna true.
>
> Alguém me explica isto.
>
>
>
>
> ------------------------------ LISTA SOUJAVA ----------------------------
> http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
> dúvidas mais comuns: http://www.soujava.org.br/faq.htm
> regras da lista: http://www.soujava.org.br/regras.htm
> para sair da lista: envie email para [EMAIL PROTECTED]
> -------------------------------------------------------------------------
>


------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a