4

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

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

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

4

2 回答 2

3

看看斯蒂芬 C 的这篇很棒的帖子。

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

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

于 2012-06-15T12:23:08.777 回答
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上

到处都一样..... 在此处输入图像描述

于 2012-06-15T12:39:34.590 回答