在 Java 中将 Int 转换为 Double

int 和 double 之间的区别是 double 用于存储 64 位双精度浮点值,而 int 用于存储 32 位整数。

Java 中的 int

int 是一种原始数据类型,大多数系统为它分配 4 个字节的内存。它用于存储整数值,其运算比双精度运算快。请参见下面的代码。

public class intOperation{
    public static void main(String[] args) {
        int a = 20;
        int b = 3;
        int c= a + b;
        System.out.println(c);
    }
}

输出:

25

在上面的代码中,abint 类型的变量,分别存储 20 和 3。两个 int 变量的总和产生另一个 int 变量 23。

Java 中的 double

double 是一种原始数据类型,大多数系统都会为其分配 8 个字节的内存。它用于存储浮点值(值为小数或以小数结尾的值)。系统对 double 的算术运算比 int 慢。请参见下面的代码示例。

public class doubleOperation{
    public static void main(String[] args) {
        double a = 20.5;
        double b = 5.0;
        double c= a + b;
        System.out.println(c);
    }
}

输出:

25.5

在上面的代码中,ab 是类型为 double 的变量,分别存储 20.5 和 5.0。两个双变量的总和导致另一个双变量 25.5。

隐式将 int 转换为 double 而不使用 Java 中的类型转换

将 int 隐式转换为 double 依赖于 double 数据类型具有更大的内存大小和更大的范围这一事实。请参见下面的代码:

public class intToDouble{
    public static void main(String args[]){
    //the int value
    int a = 55;
    //conversion of int to double
    double b = a;
    System.out.println(b);
    }
}

输出:

55.0

通过使用 Java 中的类型转换将 Int 隐式转换为 Double

就像在前面的方法中所做的一样,我们使用赋值运算符,但是将其强制转换为 double 类型。请参见下面的代码:

public class intToDouble{
    public static void main(String args[]){
    //the int value
    int a = 55;
    //conversion of int to double
    double b = (double) a;
    System.out.println(b);
    }
}

输出:

55

使用 Java 中的 Double Wrapper 类将 Int 转换为 Double

在这种方法中,我们使用 double 包装器类的 valueOf() 方法。这种方法是直接的,易于重复实现。它以 int 作为参数,并返回 double 值。请参见下面的代码。

public class intToDouble{
    public static void main(String args[]){
        //the int value
        int a = 55;
        //conversion of int to double
        double b = Double.valueOf(a);
        System.out.println(b);
    }
}

输出:

55.0

依靠 Java 的自动类型识别进行转换

这是一种直接方法,其中我们将 int 变量与 double 值相乘以得到双精度的结果。请参见下面的代码。

public class intToDouble{
    public static void main(String args[]){
        //the int value
        int a = 55;
        //conversion of int to double
        double b = 1.0 * a;
        System.out.println(b);
    }
}

输出:

55.0