RES: [SouJava-J] Comaparacao de Strings
Caro Daniel acho que isso resolve. Use o método compareTo ele retorna 0 se for igual. if(VariavelTipoString.compareTo("String")==0) { } ou if(VariavelTipoString.equals("String")) { // Se for igual } Um abraço espero que resolva seu problema André Zimowski Perevalo Associação Comercial do Paraná Dep. de Informática - Desenvolvimento [EMAIL PROTECTED] http://www.perevalo.cjb.net http://www.perevalo.cjb.net/ ICQ : 41075958 -Mensagem original- De: Daniel [mailto:[EMAIL PROTECTED]] Enviada em: Sexta-feira, 17 de Dezembro de 1999 8:42 Para: [EMAIL PROTECTED] Assunto: [SouJava-J] Comaparacao de Strings Gostaria de saber como e feita a comparacao de strings: e' correto : if ( Item == "" ) . Abracos Daniel --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] -
Re: [SouJava-J] Comaparacao de Strings
Daniel /*/ String lista; if (lista.equals("SOUJAVA")){ //Algum Code }else{ //Algum Code } /*/ Ok? Daniel wrote: Gostaria de saber como e feita a comparacao de strings: e' correto : if ( Item == "" ) . Abracos Daniel --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] -
Re: [SouJava-J] Comaparacao de Strings
Uma alternativa geralmente mais eficiente é usar: if (str1.intern() == str2.intern()) { /* ... */ } já que é feita apenas uma comparação de endereços, e não de conteúdo. Obviamente é melhor invocar o método intern() uma só vez e trabalhar apenas com o resultado. Paulo. -Original Message- From: Carlos Campos [EMAIL PROTECTED] To: '[EMAIL PROTECTED]' [EMAIL PROTECTED] Date: Friday, December 17, 1999 12:20 PM Subject: RES: [SouJava-J] Comaparacao de Strings Use if(string1.equals(string2)) ... ou if(string1.equalsIgnoreCase(string2)) ... Boa Sorte! []'s Carlos Campos - Mensagem original - De: Daniel [SMTP:[EMAIL PROTECTED]] Enviada em: Sexta-feira, 17 de Dezembro de 1999 08:42 Para: [EMAIL PROTECTED] Assunto: [SouJava-J] Comaparacao de Strings Gostaria de saber como e feita a comparacao de strings: e' correto : if ( Item == "" ) . Abracos Daniel --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] - --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] -
Re: [SouJava-J] Comaparacao de Strings
"Paulo S. L. M. Barreto" wrote: Uma alternativa geralmente mais eficiente é usar: if (str1.intern() == str2.intern()) { /* ... */ } já que é feita apenas uma comparação de endereços, e não de conteúdo. Obviamente é melhor invocar o método intern() uma só vez e trabalhar apenas com o resultado. Paulo. PERIGO! A frase "geralmente mais eficiente" depende de que geralmente... O processo causado por "String.intern()" eh o de transformar a String em uma das Strings constantes do "pool" de string do seu programa. O que significa que duas Strings com o mesmo conteudo (str1.equals(str2)) apontarao para o mesmo endereco (o que nao eh verdade na maior parte das vezes). O processo de "intern" uma String pode ser demorado, em especial se voce possui varias strings no seu pool, ja que a sua string a ser "internalizada" precisa ser comparada com varias Strings no pool. Portanto, o processo acima so eh valido se essa comparacao entre dois valores de String for ser feita repetidas vezes, o que _em geral_ nao eh o caso nas aplicacoes. Uma vez que voce esta tratando duas Strings que fazem parte do pool, a comparacao eh de fato mais rapida, ja que envolve, como foi dito, uma comparacao de referencias. O problema eh fazer disso a pratica usual, achando que isso eh mais performatico, e isso _nao_eh_verdade_. Na verdade, fazendo disso uma pratica usual, voce passara a ter mais e mais Strings constantes do pool, o que eh prejudicial por dois motivos: a String "intern" _nao_eh_eliminada_ pelo garbage collector, e portanto voce passa a ter maiores requerimentos de memoria para executar o seu programa, e em segundo lugar, quanto mais strings voce tiver no pool, mais demorado sera para voce fazer um "intern" e menores sao as chances desse processo ser mais performatico. Uma outra resalva eh nao se acostumar a usar o metodo "equals" e acabar esquecendo o "intern" alguma vez, e voce tera a comparacao errada. Portanto, utilize sempre o "equals" e, se voce identificar uma situacao onde duas strings sao constantemente comparadas, voce pode decidir usar o "intern". Fora isso, o metodo de comparacao indicado esta correto. []s, Bruno. __ Bruno Peres Ferreira de Souza Sun Microsystems System Engineer - Java Technologist [EMAIL PROTECTED] if I fail, if I succeed, at least I live as I believe --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] -
Re: [SouJava-J] Comaparacao de Strings
Use o método compareTo da classe Strings. Ex String a = "aaa"; if (aaa.compareTo("bbb") == 0) { System.out.println("diferente"); } else { System.out.println("igual"); } Espero ter ajudado Osvaldo --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] -
Re: [SouJava-J] Comaparacao de Strings
Fala, Não é correto não, em java faça if (item.equals("")) Até - Original Message - From: Daniel To: [EMAIL PROTECTED] Sent: Friday, December 17, 1999 9:41 AM Subject: [SouJava-J] Comaparacao de Strings Gostaria de saber como e feita a comparacao de strings: e' correto : if ( Item == "" ) . Abracos Daniel
Re: [SouJava-J] Comaparacao de Strings
Daniel, Não, a maneira correta é: String teste; teste = new String("texto da string"); if(teste.equals("texto da string") { } else { . } Espero ter ajudado. Marcos Nava - Original Message - From: Daniel To: [EMAIL PROTECTED] Sent: Friday, December 17, 1999 8:41 AM Subject: [SouJava-J] Comaparacao de Strings Gostaria de saber como e feita a comparacao de strings: e' correto : if ( Item == "" ) . Abracos Daniel
Re: [SouJava-J] Comaparacao de Strings
Title: Re: [SouJava-J] Comaparacao de Strings Me tirem dessa lista -- From: Daniel [EMAIL PROTECTED] To: [EMAIL PROTECTED] Subject: [SouJava-J] Comaparacao de Strings Date: Fri, Dec 17, 1999, 11:41 Gostaria de saber como e feita a comparacao de strings: e' correto : if ( Item == ) . Abracos Daniel
Re: RES: [SouJava-J] Comaparacao de Strings
Me tirem dessa lista -- From: Andre Zimowski Perevalo [EMAIL PROTECTED] To: "'[EMAIL PROTECTED]'" [EMAIL PROTECTED] Subject: RES: [SouJava-J] Comaparacao de Strings Date: Fri, Dec 17, 1999, 12:40 Caro Daniel acho que isso resolve. Use o método compareTo ele retorna 0 se for igual. if(VariavelTipoString.compareTo("String")==0) { } ou if(VariavelTipoString.equals("String")) { // Se for igual } Um abraço espero que resolva seu problema André Zimowski Perevalo Associação Comercial do Paraná Dep. de Informática - Desenvolvimento [EMAIL PROTECTED] http://www.perevalo.cjb.net http://www.perevalo.cjb.net/ ICQ : 41075958 -Mensagem original- De: Daniel [mailto:[EMAIL PROTECTED]] Enviada em: Sexta-feira, 17 de Dezembro de 1999 8:42 Para: [EMAIL PROTECTED] Assunto: [SouJava-J] Comaparacao de Strings Gostaria de saber como e feita a comparacao de strings: e' correto : if ( Item == "" ) . Abracos Daniel --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] - --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] -
Re: [SouJava-J] Comaparacao de Strings
On Fri, 17 Dec 1999, Daniel wrote: Gostaria de saber como e feita a comparacao de strings: e' correto : if ( Item == "" ) . Abracos Daniel Oi Daniel, comparar strings como voce escreveu na sua mail e´ incorreto. Dessa forma voce está comparando posições de memória, pois o nome da variável nada mais é do que um apontador. A forma correta, tanto para strings, quanto para qualquer outro objeto seria: String item1 = "Java"; String item2 = "Java"; String item3 = "java"; if(item1.equals(item2))... // Verdadeiro if(item1.equals(item3))... // Falso if(item1.equalsIgnoreCase(item3))... // Verdadeiro Somente o método equalsIgnoreCase que é próprio da classe String. O método equals existe em qualquer outra classe. Espero ter ajudado! Abracos Bruno. __ Bruno Diniz de Paula [EMAIL PROTECTED] - UFMG [EMAIL PROTECTED] - Telemig Celular "Coracoes ao alto e pes no chao." "A verdadeira experiencia com Deus nao nos faz fugir da realidade, mas nos da forcas para enfrenta-la e transforma-la." Pe. Zeca --- LISTA SOUJAVA --- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm] -