在Java中乘以双倍?

时间:2012-06-15 12:11:01

标签: java android math double multiplying

我试图将相同的双倍(正方形)乘以但数字出错了。当我自己显示双数时,数字是正确的但是当我自己乘以它时会出现错误的数字。我已经尝试过使用math.pow函数并得到了相同的结果。

    Double height=Double.parseDouble(myPrefs.getString("Heightent",""))*.0254;
    Double bmi = (height*height);
    dbmi.setText(bmi.toString());

以英寸为单位输入不同活动的高度。当我在文本框中显示高度时,它就是正确的数字。例如,当我在文本视图中放置高度时,输入的Heightent为74并且显示1.8796。但是当我使用上面的代码时,数字16显示在TextView dbmi中。有什么帮助吗?

2 个答案:

答案 0 :(得分:3)

查看Stephen C.的这篇精彩文章。

https://stackoverflow.com/a/5385202/1214163

它应该提供您需要的一切。他建议如果你需要使用大数字,那就使用BigDecimal

答案 1 :(得分:1)

我试过了两次

    Double height=Double.parseDouble("74")*.0254;
    Double bmi = (height*height);
    System.out.println("first " + bmi);


      height=Double.parseDouble("74");
      double temp = height.doubleValue()*.0254;
      bmi = (temp*temp);
      System.out.println("Second " + bmi);

Calc

并且每个地方都一样..... enter image description here