Duvida em comparação de uma string

6 respostas
tiora

Minha duvida é a seguinte tenho um vetor com algumas stirngs.

String turmasM[] ={PainelM.jTextField.getText(),PainelM.jTextField1.getText(),
                       PainelM.jTextField2.getText(),PainelM.jTextField3.getText(),"janela"};

porque quando comparo estes elementos eles não são iguais??

if(turmasM[0]==PainelM.jTextField.getText())
	{System.out.println("São iguais");}
	else
	{System.out.println("São diferentes");}

outra coisa tem como eu usas este vetor sem ser local para que eu possa usar em outros construtores??

6 Respostas

MarcioCasteloBranco

tiora,
em java para comparar objetos não se usa (==), essa forma de comparação so vai comparar as variaveis de referencia que apontam para o objeto, a forma correta e vc usar :

String str1 = "Hello"; String str2 = "Hoje"; if(str1.equals.(str2){ System.out.println("são idênticos"); }else{ System.out.println("não são idênticos"); }
A forma correta de usar o equals e sobrescreve-lo na classe, caso isto não seja feito ele usa o metodo do pai(Object).
Vlw

MarcioCasteloBranco

Amigão segue um bom topico já postado aqui no GUJ.
http://www.guj.com.br/java/63373-equals-e-compareto

tiora

Valeu MarcioCasteloBranco vou testar isso e dar uma olhada no topico que me sugeriu

F
//Ele vai comparar se o valor da String nome é Felipe.


if(nome.equals("Felipe"){
}

//Ele vai comparar se o valor da String é Felipe independente se é maiúsculo ou minúsculo.
if(nome.equalsIgnoresCase("Felipe"){

}

String se compara com equals, números faz a comparação usando ==

MarcioCasteloBranco

Boa felipevs pelo arremati final
VLW

F

:wink:

Criado 27 de julho de 2011
Ultima resposta 27 de jul. de 2011
Respostas 6
Participantes 3