Duvida basica com String

3 respostas
WGuedes

Boa Tarde a todos,pessoal alguem poderia me explicar como comparar as Strings quando estiver fazendo o SE,porque mesmo eu digitando o valor do Resp direito cai direto no Senao obrigado

import javax.swing.*;

public class Capital1 {
	
	public static void main(String[] args) {
		
	 
		String Resp ;
		
		
	Resp = JOptionPane.showInputDialog("Entre com o nome da Capital do Brasil:");
		
		 
		 
		    if(Resp == "Brasilia" || Resp =="brasilia"){
		    	
			 JOptionPane.showMessageDialog(null,"Parabens");
			 
			 }
			 
		    else{
		    	
			  JOptionPane.showMessageDialog(null,"Errado:Estude mais Geografia");
			    
			 }

		
	}

}

3 Respostas

Mero_Aprendiz

Olá meu jovem.
Para comparação de String’s, utilize o equals.

if("Brasilia".equals(Resp) || "brasilia".equals(Resp)){

Pode ficar melhor usando o equalsIgnoreCase.

if(Resp.equalsIgnoreCase("brasilia")){

[]'s
JL

alanbrasil1984

da uma olhada

http://javafree.uol.com.br/artigo/3932/Comparar-variaveis-==-ou-equals.html

para melhor entender.

felipehand
Isso só que geralmente fazemos a comparação ao contrario e fixando as comparações em variaveis constantes.
import javax.swing.*;

public class Capital1 {
	
	public static void main(String[] args) {
		String Resp ;
	    Resp = JOptionPane.showInputDialog("Entre com o nome da Capital do Brasil:");
		if(Resp.equalsIgnoreCase(Constantes.capital))	    	
			 JOptionPane.showMessageDialog(null,"Parabens");			 
        else	    	
			 JOptionPane.showMessageDialog(null,"Errado:Estude mais Geografia");
	}

} 

public class Constantes{
   public static String capital = "Brasilia";
}
Criado 1 de setembro de 2009
Ultima resposta 1 de set. de 2009
Respostas 3
Participantes 4