Java double x 10/4 = 2?

Dan*_*iel 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);
    }
}
Run Code Online (Sandbox Code Playgroud)

rge*_*man 7

在分配结果之前,您正在执行整数除法.整数除法导致int截断的结果2.要强制浮点计算和获取2.5,请使用double文字:

double x = 10.0 / 4.0;
Run Code Online (Sandbox Code Playgroud)

或者投一个double:

double x = (double) 10 / 4;
Run Code Online (Sandbox Code Playgroud)