Quantas vezes essa pergunta vai ser respondida?
Com todo o respeito aos colegas, basta dar uma
olhada nas mensagens anteriores da lista ou em
qualquer livro ou apostila introdut�ria de Java.
 
Quando voc� usa objetos,  o == compara endere�os
de mem�ria. MAS no caso de Strings, para uma
otimiza��o, justific�vel porque voc� pode ter strings de
mais de 100000 linhas, SE as Strings tiverem exatemente
o mesmo conte�do, ambas as vari�veis, s1 e s2 apontar�o
para o mesmo endere�o de mem�ria.
 
Portanto:
String s1 = "qualquer string";
String s2 = "qualquer string";
 
if(s1 == s2){
    System.out.println("Eu n�o falei? S�o iguais e ocupam o mesmo espa�o na mem�ria");
}
 
Quem tiver d�vida, fa�a um teste.
 
Agora se voc� EXPLICITAMENTE declarar:
 
String s1 = new String("qualquer string");
String s2 = new String("qualquer string");
 
if(s1 == s2){
    System.out.println("Isso nunca vai ser impresso na tela.  Quando eu uso o new, estou dizendo que quero dois endere�os de mem�ria diferentes e aceito as consequ�ncias disso");
}
----- Original Message -----
Sent: Monday, January 28, 2002 11:59 AM
Subject: Re: [java-list] String

o caro companheiro esta correto em afirmar que em java String n�o � um tipo primitivo e sim um objeto mas se equivocou em dizer que pode-se comparar Strings com == para se comparar Strings usa-se equals exemplo:  if(s1.equals(s2)){} ou if (s1.equalsIgnoreCase(s2))

 porque java no caso da string nao compara as letras e sim o local de memoria onde esta alocado o objeto ou seja nunca s1 vai se igual a s2 dessa maneira if(s1 ==s2)

 



 

>From: "Luiz Reginaldo" <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: <[EMAIL PROTECTED]>
>Subject: Re: [java-list] String
>Date: Fri, 25 Jan 2002 08:25:28 -0200
>
>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]
>-------------------------------------------------------------------------
>


O MSN Photos � o jeito mais f�cil de compartilhar e imprimir as suas fotos: http://photos.msn.com.br/support/worldwide.aspx
------------------------------ 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