Java 双倍 x 10/4=2?

标签 java double

我是 Java 新手,我想知道为什么当你有双 10/4 时却得到 2? double 是否总是必须有小数才能得到正确的答案?谢谢。

public class Super {
    public static void main(String[] args){
        double x = 10/4;
        System.out.println(x);
    }
}

最佳答案

您在分配结果之前执行整数除法。整数除法结果为 int,即截断结果 2。要强制浮点计算并获得 2.5,请使用 double 文字:

double x = 10.0 / 4.0;

或将 1 转换为 double:

double x = (double) 10 / 4;

关于Java 双倍 x 10/4=2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20130923/

相关文章:

java - 需要 6 位小数的纬度正则表达式

java - 将用户输入添加到数组

c++ - 在 C++ 中不使用科学记数法将字符串转换为 double

c++ - 如何在 C++ 中的同一函数中使用字符串和 double

实例化

Java生成随机 double

c# - 为什么我不能为 Double.Min 和 Max 分配相同字面值的 double?

java - 从 Java 调用时 OS X 命令行应用程序无法找到目录

java - Soap:如何验证空元素

解析器中的 Java 异常处理