> > > 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().
> >
> >O que eu quis dizer é que as linhas de intern são dispensáveis.
> >Experimente
> >rodar seu próprio código sem elas.
> >
> >Faça
> >                  // a = a.intern();
> >                  // b = b.intern();
> >ou tire-as fora e dê uma olhada no resultado... :-)
> 
> Eu nao preciso testar, eu sei q sem o intern() a comparacao eh diferente pq
> cada vez q vc faz a = "abc" e b= "abc" vc cria duas Strings (exceto em
> alguns compiladores e VMs com jit, q reutilizam o mesmo objeto sozinhos).
Isso seria o caso da Sun? 

Se você fala que não tem intenção de parecer arrogante, então tente um
pouco 
de humildade... Teste-as!!! ;-)
Uma dica, NÃO vai dar diferente ;-)

Cláudio Max
Programador Java Não Certifica Pela Sun

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

Reply via email to