📜  将 Int 转换为 Double 的Java程序

📅  最后修改于: 2022-05-13 01:54:49.562000             🧑  作者: Mango

将 Int 转换为 Double 的Java程序

Java数据类型可以分为原始数据类型和非原始数据类型。原始数据类型包含单个值,而非原始数据类型包含变量值的地址。 Java支持 7 种原始数据类型 - boolean、byte、char、short、int、long、float、double。这些数据类型在存储在内存中时需要不同数量的空间。

Data Type

Bits Acquired in Memory

boolean

1

byte

8

char

16

short

16

int

32

long

64

float

32

double

64

Int 存储 32 位有符号二进制补码整数,需要 32 位(4 个字节)存储在内存中,而 double 存储双精度 64 位浮点数,需要 64 位(8 个字节)存储。很多时候需要将 int 值转换为 double,因此可以使用以下三种方法执行这种转换:

  • 使用赋值运算符或隐式转换进行转换
  • 使用 Double 类构造函数进行转换
  • 使用 valueOf() 方法进行转换

1. 使用赋值运算符进行转换

当转换涉及的两种数据类型兼容时, Java执行隐式转换或扩大转换,或者将较小数据类型的值分配给较大数据类型。 Double 比 int 大,因为它需要更多的存储空间;因此, int 值被Java隐式转换为 double 。

句法:

double d = i

这里,

  • d = 转换为双精度数据类型后存储双精度值的变量
  • i = 要转换为双精度数据类型的整数值
Java
// Java program to convert int to 
// double using assignment operator
  
class GFG {
    public static void main(String[] args)
    {
        int i = 100;
        // Implicit conversion from int to double data type
        double d = i;
  
        System.out.println("Integer value " + i);
        System.out.println("Double value " + d);
    }
}


Java
// Java program to convert int to double 
// using Double wrapper class constructor
  
class GFG {
    public static void main(String[] args)
    {
        int i = 100;
        // Conversion of int to double data 
          //type using Double wrapper class
        Double d = new Double(i);
  
        System.out.println("Integer value " + i);
        System.out.println("Double value " + d);
    }
}


Java
// Java program to convert int 
// to double using valueOf() method
  
class GFG {
    public static void main(String[] args)
    {
        int i = 100;
        // Conversion of int to double data type using valueOf() method
        Double d = Double.valueOf(i);
  
        System.out.println("Integer value " + i);
        System.out.println("Double value " + d);
    }
}


输出
Integer value 100
Double value 100.0

2.使用Double wrapper类构造函数进行转换

Java中的 Double 类是一个包装类,用于创建可以保存单、双类型值并包含处理双问题的多个方法的对象。可以将 Int 值传递给 Double 类的构造函数,以创建使用提供的整数值初始化的 double 类型的对象。

句法:

Double d = new Double(i)

这里,

  • d = 转换为双精度数据类型后存储双精度值的变量
  • i = 要转换为双精度数据类型的整数值

Java

// Java program to convert int to double 
// using Double wrapper class constructor
  
class GFG {
    public static void main(String[] args)
    {
        int i = 100;
        // Conversion of int to double data 
          //type using Double wrapper class
        Double d = new Double(i);
  
        System.out.println("Integer value " + i);
        System.out.println("Double value " + d);
    }
}

输出

Integer value 100
Double value 100.0

3.使用Double wrapper类的valueOf()方法进行转换

双包装类 valueOf() 方法将 int 值转换为 double 类型。它返回使用提供的整数值初始化的 Double-object。

句法:

Double d = Double.valueOf(i)

这里,

  • d = 转换为双精度数据类型后存储双精度值的变量
  • i = 要转换为双精度数据类型的整数值

Java

// Java program to convert int 
// to double using valueOf() method
  
class GFG {
    public static void main(String[] args)
    {
        int i = 100;
        // Conversion of int to double data type using valueOf() method
        Double d = Double.valueOf(i);
  
        System.out.println("Integer value " + i);
        System.out.println("Double value " + d);
    }
}
输出
Integer value 100
Double value 100.0