Android计算器:操作查询+为答案输出删除不需要的零



嗨,我正在开发安卓计算器应用程序,现在正在进行操作。我定义了以下内容:

ArrayList<Float> inputnum = new ArrayList<Float>(); 
float inputnum1; 
float inputnum2; 

然后对于操作,

case MULTIPLY: 
inputnum1 = inputnum.get(0); 
inputnum2 = inputnum.get(1); 
inputnum.add(inputnum1 * inputnum2);  
Display.setText(String.format("%.9f", inputnum.get(0))); 

类似于第一分区。

muliply函数和divide函数适用于整数(例如5*4输出20.00000000)然而,当它处理带有小数点的数字时,例如5.3*4,它输出为21.12000089,这是不正确的。

问题出在哪里?另外,如何将输出设置为Display以删除不必要的零?例如当5*4时,它只显示20而不是20.000000作为最终答案?当5.3*4=21.12而不是21.12000000作为最终答案时?

非常感谢!

只需将所有相关的浮点值更改为双,就可以避免出现舍入误差。

如果想通过在点后填充零来表示小数点后9位,例如7.56变成7.560000000,可以使用以下编码。

Display.setText(String.format("%.9f", inputnum.get(0)));  

相关内容

  • 没有找到相关文章