除分数不给出小数

Dividing fraction doesn't give decimals

我正在尝试除以一个分数,但没有给出要求的结果。

例如:

我的代码:

    int numerator = 1;
    int denominator = 2;

    String s;
    double product = numerator / denominator;
    s = numerator + "/" + denominator + "(" + product + ")";
    System.out.println(s);

结果是1/2(0.0)应该是1/2(0.5)

可能是因为我使用的是双精度还是四舍五入不好?

int 除以 int 得到 int。所以,你需要其中之一是浮点数才能得到浮点数的答案。

简单地说,你可以这样做:

double product = numerator / (denominator * 1.0);

double product = numerator / (double) denominator;

double product = (double) numerator / denominator;