Nada disso. Como as coisas são Objetos o == compara
se é o MESMO OBJETO, ou seja, se duas variáveis fazem
referência pra MESMA INSTÂNCIA do objeto.
Pode ter vários objetos iguais, ou seja, com a mesma
forma e conteúdo que não são o mesmo objeto. Pra isso
tem os métodos equals(), contentEquals(), compare().
Achar que dois objetos da mesma classe e com o mesmo
conteúdo devem ser == é o mesmo que dizer que japônes
é tudo igual :-).
Como a classe String é imutável, não pode ser alterada,
o compilador otimiza o uso da memória usando o mesmo
objeto pras duas strings com mesmo conteúdo. Mas não
conte com isto em todas as versões e implementações.
Pode considerar que no exemplo o x só é igual ao y
por coincidência.

Michel writes:
Caro Luiz Barbosa, estou utilizando apenas para exemplificar, se, antes da comparação, voce mandar escrever na tela os valores de x e de y, serão ambos de "100", mas o 1º ele considera iguais, o 2º não.
Já que possuem valores iguais, não acha que ambos
deveria retornar o mesmo valor na comparação (x == y)???
---
Mauro Ramos Martini
[EMAIL PROTECTED]
counter.li.org#225287
------------------------------ 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
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------

Responder a