Ajuda por favor


package ListaPoo02;
import javax.swing.JOptionPane;
public class Calculadora {
	private double numero01;
	private double numero02;
	 
	private char acao;
    
	
	
public  Calculadora (double numero01, double numero02, char acao){
	this.numero01 = numero01;
	this.numero02 = numero02;
	this.acao = acao ;
	
}
public double getNumero01() {
	return numero01;
}
public void setNumero01(double numero01) {
	this.numero01 = numero01;
}
public double getNumero02() {
	return numero02;
}
public void setNumero02(double numero02) {
	this.numero02 = numero02;
}
public char getAcao() {
	return acao;
}
public void setAcao(char acao) {
	this.acao = acao;
}


public double somar (double numero01,double numero02){
	double resultado;
	if (acao == '1'){
		resultado = numero01 + numero02;
	}
	return acao;
		}
public double subtrair (double numero01,double numero02){
	double resultado  = 0 ;
	if (acao == '2'){
		resultado = numero01 - numero02;
	}
	return resultado;
		}
public double multiplicar (double numero01,double numero02){
	double resultado=0;
	if (acao == '3'){
		resultado = numero01 * numero02;
	}
	return resultado;
		}
public double dividir (double numero01,double numero02){
	double resultado=0;
	if (acao == '4'){
		resultado = numero01 / numero02;
	}
	return resultado;
}
		
public double resultado(){
	double resultado = 0 ;
	if(acao =='1'){
		resultado = numero01 + numero02;
	}else if(acao == '2'){
		resultado = numero01 - numero02; 
	}else if(acao == '3'){
		resultado = numero01 * numero02;
	}else if(acao == '4'){
		resultado = numero01 / numero02;
	}
		return resultado;
}
 
public static void main (String[] args){
Calculadora cal = new Calculadora(0.0 , 0.0, 'z' ); 
	
	cal.somar(0,0);
	cal.dividir(0,0);
	cal.multiplicar(0,0);
	cal.subtrair(0,0);
	 
	 
	
	
	 String acao = JOptionPane.showInputDialog(null, "informe a operação :\n 1=somar\n 2=subtrair\n 3=multiplicar\n 4=dividi");
	 char acao01 = (char) Integer.parseInt(acao);
	 
	 
	 String numero01 = JOptionPane.showInputDialog(null,"informe seu primeiro numero: ");
	 double numero04 = Integer.parseInt(numero01);
	 
	 String numero02 = JOptionPane.showInputDialog(null,"informe seu primeiro numero: ");
	 double numero03 = Integer.parseInt(numero02);
	  
	 
	 JOptionPane.showMessageDialog(null, "resultado : " + cal.resultado());
	 
 
	
	 
	 
	}

}

bom dia pessoal minha duvida é nao tou conseguindo executar o main e nao sei onde eu estou errando tb me ajudem pf nao sei se minha chamada de metodo da errada nao sei

Estranho, aqui funcionou normal.

como vc fez

como vc fez[/quote]

Criei uma classe fora de qualquer pacote, coloquei todo o codigo lá e mandei o eclipse executar.

Edit: e claro, tirei o package la de cima porque minha classe estava fora de qualquer pacote.

Edit2: Eu somei 20 com 30 e o resultado saiu 0 :?

Cara,

você já estava usando um tópico disso: http://www.guj.com.br/java/267700-calculadora

utiliza um só né,

Abraço!

Cara, dei uma modificada no seu código para torna-lo bem mais limpo

[code]import javax.swing.JOptionPane;

public class Calculadora {

public double resultado(String acao, double numero01, double numero02) {
	if ("1".equals(acao)) {
		return numero01 + numero02;
	} else if ("2".equals(acao)) {
		return numero01 - numero02;
	} else if ("3".equals(acao)) {
		return numero01 * numero02;
	} else if ("4".equals(acao)) {
		return numero01 / numero02;
	}
	return 0;
}

public static void main(String[] args) {
	Calculadora cal = new Calculadora();
	
	String acao = JOptionPane
			.showInputDialog(null,
					"informe a operação :\n 1=somar\n 2=subtrair\n 3=multiplicar\n 4=dividi");
	
	Double numero01 = new Double(JOptionPane.showInputDialog(null,
			"informe seu primeiro numero: "));

	Double numero02 = new Double(JOptionPane.showInputDialog(null,
			"informe seu primeiro numero: "));

	JOptionPane.showMessageDialog(null, "resultado : " + cal.resultado(acao, numero01, numero02));

}

}[/code]

Nunca utilizei Swing (salvo para coisas extremamente simples), o código acima funcionou perfeitamente. Tenta ali ae, qualquer duvida é só falar.

vish velho você ta fazendo um rolo ai rsrs…
está funcionando porem errado, na verdade não sei vai que você queria assim.
Se não funcionar para você for os resultados errados então não está funcionando.

coloque isso no seu main

public static void main(String[] args) {
		Calculadora cal = new Calculadora(0.0, 0.0, 'z');

		cal.setAcao((JOptionPane.showInputDialog(null,
				"informe a operação :\n 1=somar\n 2=subtrair\n 3=multiplicar\n 4=dividi").toString().charAt(0)));

		cal.setNumero01(Double.parseDouble(JOptionPane.showInputDialog(null, "informe seu primeiro numero: ")));

		cal.setNumero02(Double.parseDouble(JOptionPane.showInputDialog(null, "informe seu segundo numero: ")));

		JOptionPane.showMessageDialog(null, "resultado : " + cal.resultado());

	}

da uma debugada para ver o que está acontecendo porque você está se perdendo ai!!

  1. Voce Não está passando argumento algum para o método resultado… portanto o método resultado não faz nada, pois acao está igual ‘z’ na sua variável
    2)O método resultado já faz todo o processamento…porque então vc ter todos aqueles métodos somar, dividir…
    3)Não é necessário todas aquelas variáveis globais
    4)Não prescisa ter argumentos no método construtor
    5)Esse cast “(char) Integer.parseInt(acao)” não vai trazer o resultado que vc deve estar pensando

No resultado deixa assim

public double resultado(char acao, numero01, numero02){  
    double resultado = 0 ;  
    if(acao =='1'){  
        resultado = numero01 + numero02;  
    }else if(acao == '2'){  
        resultado = numero01 - numero02;   
    }else if(acao == '3'){  
        resultado = numero01 * numero02;  
    }else if(acao == '4'){  
        resultado = numero01 / numero02;  
    }  
        return resultado;  
}  

e para chamar o resultado faz assim no seu main

      String strAcao = JOptionPane.showInputDialog(null, "informe a operação :\n 1=somar\n 2=subtrair\n 3=multiplicar\n 4=dividi");  
     char acao = strAcao.charAt(0);  
       
       
     String strResult1 = JOptionPane.showInputDialog(null,"informe seu primeiro numero: ");  
     double numero01 = Integer.parseInt(strResult1);  
       
     String strResult2 = JOptionPane.showInputDialog(null,"informe seu primeiro numero: ");  
     double numero02 = Integer.parseInt(strResult2);  
        
       
     JOptionPane.showMessageDialog(null, "resultado : " + cal.resultado(acao,numero01,numero02));  

Resumindo…somente com esses 2 métodos vc resolve seu problema…