【问题标题】:Java calculator debuggingJava计算器调试
【发布时间】:2016-07-04 15:48:56
【问题描述】:

我通过调试各种教程中的程序来学习 Java。我正在修复这个计算器:http://www.dreamincode.net/forums/topic/321933-creating-a-calculator-using-jframe/
如果按“1/1”,则显示“1.0”而不是“1”。我倾向于

if (abs(result-round(result)) < 0.000000001){(int)(result)}

解决此故障的适当方法是什么? 提前谢谢你,

【问题讨论】:

  • (int)(result) 毫无意义。你的意思是result=(int)(result);
  • 是的,我的意思是 result=(int)(result);。有没有更好的方法来实现这一目标?我正在努力学习良好的编码实践。
  • @StepanLenevich 如果你这样做 (int)(result); 你不会得到 3/2 的 1.5
  • 这就是为什么我要检查 if (abs(result-round(result))

标签: java casting jframe int


【解决方案1】:

我认为你已经接近你想要的,但这段代码可能是更正确的方法:

if (abs(result-round(result)) < 0.000000001){(int)Math.round(result);}

【讨论】:

    猜你喜欢
    • 2012-04-11
    • 2014-05-04
    • 2023-03-23
    • 1970-01-01
    • 2019-09-26
    • 1970-01-01
    • 2019-02-24
    • 2015-05-12
    • 1970-01-01
    相关资源
    最近更新 更多