乘以双变量出错

时间:2016-12-03 21:23:39

标签: java

此方法的想法是将十进制数转换为分数。唯一引起问题的是wert = wert * 10。 当我在这个方法中运行例如7.52时,我得到:

7.52

75.19999999999999

751.9999999999999

7519.999999999999

75199.9999999999

......它会继续下去,造成更多问题。我错过了什么?我希望它像这样7.52 - > 75.2 - > 752.0。

public static Eintrag toBruchzahl(double wert) {
    System.out.println(wert);
    boolean isDone = false;
    int k = 0;
    while (!isDone) {
        if (wert % 1 == 0) {
            isDone = true;
            Eintrag resultat = new Eintrag((int) wert, (int) Math.pow(10, k));
            //resultat.normalisieren();
            return resultat;
        } else {
            k++;
            wert = wert * 10;
            System.out.println(wert);
        }
    }
    return null;
}

0 个答案:

没有答案