RES: [SouJava-J] Comaparacao de Strings

1999-12-17 Por tôpico Andre Zimowski Perevalo

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

1999-12-17 Por tôpico Alvaro Mota Goncalves

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

1999-12-17 Por tôpico Paulo S. L. M. Barreto

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

1999-12-17 Por tôpico Bruno F. Souza

"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

1999-12-17 Por tôpico ogarcia

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

1999-12-17 Por tôpico Marco A. Lopes Filho



 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

1999-12-17 Por tôpico Marcos Roberto Nava



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

1999-12-17 Por tôpico Carlos Eduardo Tucci
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

1999-12-17 Por tôpico Carlos Eduardo Tucci

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

1999-12-17 Por tôpico Bruno Diniz de Paula

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