**我如何从我们这里获得FLOAT数据
try{
int num1,num2,num3,num4,sum;
float div;
DecimalFormat decft = new DecimalFormat("#.00");
num1 = Integer.parseInt(txt_bin_balance.getText());
num2 = Integer.parseInt(txt_issued_quantaty.getText());
num3 = Integer.parseInt(txt_arrived_quantaty.getText());
sum = (num1-num2)+num3;
div = (float)sum;
txt_final_bin_balance.setText(" " + String.valueOf(div));
} catch(Exception e){
JOptionPane.showMessageDialog(null,e);
}
但是使用此代码和计算它会出现这样的错误消息 enter image description here
我不会这样做
txt_final_bin_balance =(txt_bin_balance - txt_issued_quantaty)+ txt_arrived_quantaty
结果=(10-3.50)+6.15
结果= 12.65
请帮我解决这个问题 如果有人能给出这样做的例子**(例子需要)** 谢谢
答案 0 :(得分:0)
您正在尝试解析" 5.2"使用Integer.parseInt()
方法转换为int变量,这就是为什么你得到一个NumberFormatException。我不确定你要求的是什么,但我认为你想要的是:
try
{
float num1,num2,num3,num4,sum;
float div;
DecimalFormat decft = new DecimalFormat("#.00");
num1 = Float.parseFloat(txt_bin_balance.getText());
num2 = Float.parseFloat(txt_issued_quantaty.getText());
num3 = Float.parseFloat(txt_arrived_quantaty.getText());
sum = (num1-num2)+num3;
div = (float)sum; //sum is alredy float so you dont need this one anymore
txt_final_bin_balance.setText(" " + String.valueOf(div));
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,e);
}