Android与int [java]相乘

时间:2014-04-18 16:40:02

标签: java android

我有一个双倍值a = 0.00059 和一个Integer值,它增加并乘以double值(比如b = 1)

当我设置textview的答案时

//for b = 1
view.setText(((double)(a*b)));
我得到的答案是" 5.9E-4"但它应该是0.00059。

我正确地将这些值相乘。?

3 个答案:

答案 0 :(得分:4)

除了提供的其他答案外,您还可以使用格式化程序:

NumberFormat formatter = new DecimalFormat("#.#####");
view.setText(formatter.format(a*b));

答案 1 :(得分:3)

您正确地将它们相乘。值5.9E-40.00059在数学上和编程上是等价的。表示5.9E-4就像科学记法,即5.9x10 ^( - 4)相当于0.00059。

答案 2 :(得分:3)

您获得的值与您想要的值相同,但格式为科学记数法。您需要做的是将其显式转换为String:

view.setText(String.format("%f", a*b));

您最终可以通过这种方式指定小数点分隔符后打印的小数位数:

// displays two digits after the decimal separator
view.setText(String.format("%.2f", a*b));