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);
}
}
Integer value 100 Double value 100.0
2. 使用 Double 包裝類構造函數進行轉換
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包裝類的valueOf()方法進行轉換
Double 包裝類 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
相關用法
- Java Integer divideUnsigned()用法及代碼示例
- Java Integer equals()用法及代碼示例
- Java Integer getInteger()用法及代碼示例
- Java Integer longValue()用法及代碼示例
- Java Integer max()用法及代碼示例
- Java Integer min()用法及代碼示例
- Java Integer numberOfLeadingZeros()用法及代碼示例
- Java Integer numberOfTrailingZeros()用法及代碼示例
- Java Integer parseInt()用法及代碼示例
- Java Integer parseUnsignedInt()用法及代碼示例
- Java Integer remainderUnsigned()用法及代碼示例
- Java Integer reverseBytes(int i)用法及代碼示例
- Java Integer toBinaryString()用法及代碼示例
- Java Integer toHexString()用法及代碼示例
- Java Integer toUnsignedLong()用法及代碼示例
- Java Integer toUnsignedString()用法及代碼示例
- Java IntBuffer allocate()用法及代碼示例
- Java IntBuffer array()用法及代碼示例
- Java IntBuffer arrayOffset()用法及代碼示例
- Java IntBuffer asReadOnlyBuffer()用法及代碼示例
- Java IntBuffer clear()用法及代碼示例
- Java IntBuffer compact()用法及代碼示例
- Java IntBuffer compareTo()用法及代碼示例
- Java IntBuffer duplicate()用法及代碼示例
- Java IntBuffer equals()用法及代碼示例
注:本文由純淨天空篩選整理自saxenaanjali239大神的英文原創作品 Java Program to Convert Int to Double。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。