>Seguinte, não se testa igualdade de cadeias (strings) usando "==". Se
>você perguntar a == b (onde a e b são tipo String) o compilador
>comparará
>as referências (a e b fazem referência ao mesmo objeto) ou seja apontam
>para o mesmo lugar? Se eu crie a = "abc" e passei b valendo "abc" para
>um método, é claro que estes "abc" estão "guardados" em distintas
>posições
>logo a != b mesmo ambos valendo "abc". E isso vale pra qualquer outra
>comparação. Para testar objetos, use o método .equal.
>(a única excessão aparente é quando se cria dentro de um mesmo método
>cadeias valendo o mesmo valor, então java "usa" a mesma atribuição e
>sim vale a==b!)

Hum, vc fez bem em dizer aparente... Teste este codigo aih...

Strings.java
-------------------------------------------------------------
public class Strings {
        public static void main(String[] args) {
                String a = "abc";
                String b = "abc";
                a = a.intern();
                b = b.intern();
                System.out.println(a==b);
        }
}

Vc vai ver q a==b, e em nenhum momento eu fiz a =b ou a = b = "abc". Essa 
magica do intern eh especialmente util qdo vc precisa comparar uma longa 
sequencia de Strings uma com a outra. Uma comparacao com = eh muuuito mais 
rapida do q chamar o metodo equals().

Mas vc deu uma boa explicacao :-)

>Até
>
>Cláudio Max

----------------------------------------------------
Michael Nascimento Santos
Sun Certified Programmer for the Java 2 Platform
Analista/Consultor
Moderador SouJava - www.soujava.org.br
CPM Sistemas - www.cpm.com.br
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.


------------------------------ 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