如何在Java中关闭自动舍入?

时间:2014-10-30 13:29:03

标签: java eclipse rounding

我的代码:

public class klas {
    public static void main (String [] args)
    {
        int a=5, b=4;
        double c=0;
        c=a / b;
        System.out.println ("a/b=c");
        System.out.println (a+ " / " + b + " = " + c);

    }

}

我的输出:

 a/b=c
 5 / 4 = 1.0

期望的输出:0.2。

如何解决?

2 个答案:

答案 0 :(得分:4)

将5除以4时,你永远不会得到0.2,但你可以得到1.25:

c = (double)a/b;

如果没有强制转换,a / b将被计算为两个整数的除法,因此结果也是整数。

答案 1 :(得分:0)

首先,您正在执行整数数学运算;除以两个整数的结果是int。其次,你要求的结果是2/10。这相当于1/5。所以,

double c = 1 / (double) 5;
System.out.printf("%.1f%n", c);

输出是(请求的)

0.2