我有一个存储在我的db.table中的值作为欠款,其中有一个减号,例如arrears = -100.0,当需要支付一笔金额来取消或减少欠款时,我得到错误的结果。例如:
arrears = -100.0显示在jtextfiled命名的'欠款'来自db.table
用户输入金额将被支付到名为“付款”的文本框中。
必须进行计算,并且必须将新的欠款退回到“欠款”中。 jtextfield。这是我在下面写的代码:
double a,b,e;
a=Double.valueOf(arrears.getText());
b=Double.valueOf(pay.getText());
e=a+b;
arrears.setText(String.valueOf(e));
计算后, arreas
= -100.0,amount paid
= 50.0我得到-45.0
而不是-50
。请问是什么问题。
答案 0 :(得分:1)
看起来问题不在计算中。我建议您使用调试器或日志记录,例如:
double a,b,e;
System.out.println("arrears = " + arrears.getText());
System.out.println("pay =" + pay.getText());
a=Double.valueOf(arrears.getText());
b=Double.valueOf(pay.getText());
e=a+b;
System.out.println("a = " + a);
System.out.println("b = " + b);
System.out.println("e = " + e);
arrears.setText(String.valueOf(e));
答案 1 :(得分:1)
用户在付费文本字段中输入5 - >将5添加到欠款中,用户将0输入付费文本字段 - >加上50,总值现在是-100 + 5 + 50 = 45