[RESOLVIDO] Problema conversão string double

3 respostas
F
public String mostraPreço()
    {
		Double total = 0.0;
		for(int i = 0;i<modelo.getRowCount()-1;i++){
			String qt = (String) modelo.getValueAt(i, 2);
			String pr = (String) modelo.getValueAt(i, 3);
			
			int qtdade = Integer.parseInt(qt);
			double preço = Double.parseDouble(pr);
			double totalLinha = qtdade*preço;
			total = total + totalLinha;
		}
		String spt = String.valueOf(total);
		return spt;
    }
p = new JButton("Preço total (R$)");
		p.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e)
		      {
				JOptionPane.showMessageDialog(null,"Preço Total (R$):"+mostraPreço());
		      }
		});

Boa noite senhores!!!
em um trabalho de um sistema de vendas, queria que ao clicar no botão que foi mostrado acima [p], fosse mostrado uma joption pane com o preço total de linhas em uma jtable. Mas aparece a seguinte mensagem :
Preço total(R$):0.0

O q eu estou fazendo de errado?
grato

3 Respostas

Vini_Fernandes

Cara, creio que o seu programa nao entra no laço “for”. Veja se isso acontece mesmo! Outra coisa, se quiser a representacao de um tipo Double basta fazer:

Double numero = new Double("1234.4321");
//pegando a representacao em String
numero.toString();

t+

F

o problema é q eu pego object , passo pra string, passo pra double e int pra efetuar as contas e depois retorno pra string…

Vini_Fernandes

Cara, tem algumas coisas que eu mudaria em seu programa. Veja o que eu mudaria:

//NUNCA ACENTUE NOME DE TEMODOS E/OU VARIAVEIS
	//public String mostraPreço()
	public Double calcularPreco()
	        {  
	            Double total = 0;  
	            for(int i = 0;i<modelo.getRowCount()-1;i++){  
	                String qt = (String) modelo.getValueAt(i, 2);  
	                String pr = (String) modelo.getValueAt(i, 3);  
	                  
	                int qtdade = Integer.parseInt(qt);  
	                double preço = Double.parseDouble(pr);  
	               double totalLinha = qtdade*preço;  
	               total = total + totalLinha;  
	           }  
	           //String spt = String.valueOf(total);  
	           return total;  
	       }
p = new JButton("Preço total (R$)");  
	         p.addActionListener(new ActionListener(){  
	             public void actionPerformed(ActionEvent e)  
	               {  
	                 //JOptionPane.showMessageDialog(null,"Preço Total (R$):"+mostraPreço());
	            	 JOptionPane.showMessageDialog(null,"Preço Total (R$):"+calcularPreco().toString());
	               }  
	         });

Cara, agora seu metodo calcularPreco() retorna um Double e dá pra voce usar esse metodo em outros pontos do seu programa para fazer contas!

T+

Criado 4 de novembro de 2009
Ultima resposta 4 de nov. de 2009
Respostas 3
Participantes 2