double类型转换成int类型

时间:2024-11-12 07:47:03

1、案例演示 

public class test09 {
    public static void main(String[] args) {
        double a = 5000.44;
        double b = 100.12;

        double v = a / b;
        int i = new Double(v).intValue();
        (i);
        (v);
    }
}

运行结果:

49
49.944466640031955

2、源码查看

    /**
     * Returns the value of this {@code Double} as an {@code int}
     * after a narrowing primitive conversion.
     * @jls 5.1.3 Narrowing Primitive Conversions
     *
     * @return  the {@code double} value represented by this object
     *          converted to type {@code int}
     */
    public int intValue() {
        return (int)value;
    }

通过以上的官方源码可以发现,这个方法需要创建Double对象,才能调用这个方法。

3、授之以渔 

这个是官方源码的构造方法,我们可以看到还可以尝试转换为其他类型,比如转换为short类型。