java - 在java中计算和显示数字

标签 java swing bigdecimal

我有以下代码......

double num1 = Double.parseDouble(textArea_price.getText());
double num2 = Double.parseDouble(textArea_quantity.getText());

double result = num1*num2;
textArea_result.setText(
    new BigDecimal(textArea_price.getText())
        .multiply(new BigDecimal(textArea_quantity.getText())).toString());

每次单击按钮时,textArea_price 和 textArea_quantity 中的数字都会相乘并显示在 textArea_result 中。我希望将 textArea_result 中的值添加到两个 textareas 相乘的结果上,而不是每次单击按钮时重置 textArea_result 中的值...

最佳答案

我不懂Java,但不是这个吗?

double num1 = Double.parseDouble(textArea_price.getText());

double num2 = Double.parseDouble(textArea_quantity.getText());

double oldResult = 0;
String result = textArea_result.getText();
if (result  != "")
    oldResult = Double.parseDouble(result);

double result = oldResult + num1 * num2;
textArea_result.setText(Double.toString(result));

如果你真的想避免 if 语句,请尝试这个,但这只是语法糖:

double num1 = Double.parseDouble(textArea_price.getText());

double num2 = Double.parseDouble(textArea_quantity.getText());

String result = textArea_result.getText();
double oldResult = (result == "") ? 0 : Double.parseDouble(result);

double result = oldResult + num1 * num2;
textArea_result.setText(Double.toString(result));

关于java - 在java中计算和显示数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9840848/

相关文章:

java.lang.ClassCastException 套接字 readObject

java - 未找到 EJB 方法

java - Gmail API 获取邮件 'cannot resolve method execute()'

java - 如何对void方法进行白盒测试?

java - 如果用户输入错误的数字数据,如何调用错误消息

javascript - 如何创建新的 MathContext?

Java 字符串翻译

java - 如何创建自动发票,无需生成 jtextfield

Java:BigDecimal 和 Double.NaN

java - java BigDecimal 存储垃圾值的问题