Dúvidas para executar pesquisa em vetor com um for

3 respostas
W

Estou com dificuldades para fazer este código funcionar, o que está acontecendo é que a busca no vetor é feita, porém quando sai do for retorna um erro em uma linha já execultada anteriormente. Não estou endendendo… Se puderem me ajudar agradeço.

case 3: String SairCase3 = "S", PesqMes = null; String VData = null; String Pcusto=null, Pvenda=null; double Vlucro=0, VlucroTotal=0, XPcusto=0, XPvenda=0; int z=0; while (SairCase3.equals("S")){ PesqMes = JOptionPane.showInputDialog("Digite a data da venda: "); if (PesqMes.length()==0){ JOptionPane.showMessageDialog(null,"Campo em branco."); return; } for(z=0; z<10; z++){ VData = String.valueOf(vendproc[(z)].getDatvenda()); if (VData.equals(PesqMes)){ Pvenda = String.valueOf(vendproc[(z)].getValvenda()); Pcusto = String.valueOf(vendproc[(z)].getValcusto()); XPvenda = Double.valueOf(Pvenda); XPcusto = Double.valueOf(Pcusto); Vlucro = XPvenda - XPcusto; JOptionPane.showMessageDialog(null,"Relatório Data: " + VData + "\nPosição do vetor: "+z+ "\nPreço de Custo: R$ "+XPcusto+ "\nPreço de Venda: R$ "+XPvenda+ "\nLucro da Venda: R$ "+Vlucro); VlucroTotal = VlucroTotal + Vlucro; } else{ JOptionPane.showMessageDialog(null,"Mês pesquisado não foi encontrado."); return; } } JOptionPane.showMessageDialog(null,"\nLucro Total do mês pesquisado é R$: " + VlucroTotal); SairCase3 = JOptionPane.showInputDialog("Deseja continuar visualizando? (S/N)?"); }

Caso seja preciso todo o código eu enviou depois…

3 Respostas

felipedamiani

Que erro que está dando?

L

Bom dia!

Sem o erro fica difícil falar algo, pois não se tem todo o código no trecho para executarmos… mas dê uma olhada na declaração do for:

for(z=0; z<10; z++)

tente limitar o mesmo pela quantidade de elementos no array, em vez de um número estático. Observe também que esta primeira conversão pode ser desnecessária:

Pvenda = String.valueOf(vendproc[(z)].getValvenda());

()

XPvenda = Double.valueOf(Pvenda);

[]'s

T

realmente sem ter ao menos a identificação da linha que está dando erro fica difícil, poderia dizer qual a linha do erro?

Criado 14 de abril de 2008
Ultima resposta 14 de abr. de 2008
Respostas 3
Participantes 4