繁体   English   中英

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

[英]How to turn off automatic rounding in Java?

我的代码:

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。

如何解决?

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

c = (double)a/b;

如果没有强制转换为 double,a/b 被评估为两个整数的除法,因此结果也是一个整数。

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

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

输出是(请求的)

0.2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM