>
>Michael Santos disse que:
>
> > 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().
>
>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).

Gostaria apenas de esclarecer que no caso especifico de Strings vc tem a 
opcao de usar o intern(). Como eu falei, a sua explicacao foi bem apropriada 
e correta, faltando apenas mencionar q alem de a = b = "abc",
se vc criou, digamos, uma array contendo n Strings diferentes e precisa 
colocar mais uma String nesta array q estah ordenada, vc pode obter uma 
melhor performance chamando intern() antes de efetuar a insercao na array.

Nunca quis, em nenhum momento, dizer q vc estava errado, muito pelo 
contrario, tentei somente salientar esta excecao q existe para Strings e q 
eh a unica classe do "core" do Java q oferece essa possibilidade. Se alguem 
souber de alguma outra, me avise.

>Até
>Cláudio Max.
>Programador Java Não Certificado Pela Sun

Esta jah eh a terceira vez q alguem fica ofendido pq eu complemento uma 
resposta. Quero deixar bem claro q nao tenho a intencao de parecer superior 
a ninguem e todos estamos nesta lista com o unico objetivo de aprimorar 
nossos conhecimentos.

Eu tb erro como todo mundo, inclusive como nosso amigo JavaMan deve errar tb 
(foi mal, Bruno, falar de vc sem pedir licenca, mas acho q vc concorda com o 
meu argumento... :-)), e tenho tb minhas duvidas.

As pessoas mais "proeminentes" nesta lista, como Einar Saukas, Sven, Sergio 
Oliveira e eu mesmo, por exemplo, jah recorremos a ela como forma de obter 
orientacao e eh pra isso q ela serve.

Nao me sentiria ofendido se alguem nesta lista corrigisse alguma imprecisao 
tecnica ou q desse outras opinioes - como no caso do polimorfismo, por 
exemplo, uma das maiores threads de discussao q jah varreu a lista na 
historia dela - desde q nao me menosprezasse.

O fato de eu assinar como Sun Certified Programmer eh soh pq isso representa 
um certo esforco e investimento da minha parte e, jah q eu ganhei o titulo, 
tenho o direito de usar, ora bolas... :-P

Nao acho q pq eu tenho a certificacao seja melhor q alguem e inclusive sei 
de pessoas na lista q nao possuem a certificacao - como nosso amigo Bruno, 
de novo (deve tah ficando de orelha quente jah, hein?) - e q sabem mais do q 
eu.

Resumindo, todos somos imperfeitos mas, se eu sei q vc cometeu um erro ou 
esqueceu de algum fato relevante, acho q eh a minha obrigacao, inclusive 
como moderador de transmitir esta informacao para os usuarios, de modo q 
possamos todos progredir profissionalmente e produzir codigo de qualidade, 
ateh mesmo pq a "tranqueira" q alguem faz hj pode ser o projeto q eu vou 
pegar para dar manutencao amanha... :-)

De qqer forma, sobre a msg, espero q o ponto tenha ficado claro. Peco 
desculpas ao nosso amigo Claudio Max se o ofendi de alguma forma. Espero q 
numa ocasiao q tenha alguma duvida, vc esteja disposto a me ajudar... :-)


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