在 Java 中將 Double 轉換為浮點數

Rupam Yadav 2023年10月12日
  1. 在 Java 中使用 TypeCasting 將 Double 轉換為 Float
  2. 在 Java 中使用 Double.floatValue() 將 Double 轉換為 Float
在 Java 中將 Double 轉換為浮點數

在本教程中,我們將學習如何在 Java 中將雙精度值轉換為浮點數。Double 和 float 型別用於在 Java 中儲存實數或浮點數,但 double 資料型別比 float 更精確。請記住,浮點數的預設資料型別是 double。

在 Java 中使用 TypeCasting 將 Double 轉換為 Float

要定義浮點型別,我們必須使用字尾 fF,而字尾 dD 是可選的。float 的預設值是 0.0f,而 double 的預設值是 0.0d。預設情況下,浮點數在 Java 中被視為雙精度數。

TypeCasting 是我們將一種原始資料型別的值分配給另一種型別的過程。我們知道 double 是比 float 更大的資料型別,所以我們需要向下轉換它。要將函式 double 型別轉換為 float,我們需要在十進位制值之前的括號中提及 float 關鍵字。

我們將看到 double 資料型別需要更多記憶體來儲存雙精度數字,並且在輸出中更準確。相比之下,float 資料型別需要更少的空間來儲存單精度數字,並提供最多六位小數的結果。因此,我們明確地將雙 d 型別轉換為浮動 f

public class JavaDoubleToFloat {
  public static void main(String args[]) {
    double d1 = 1.0;
    double d2 = 3.0;
    double d = d1 / d2;
    System.out.println("double d : " + d);

    float f = (float) d;
    System.out.println("float f : " + f);
  }
}

輸出:

double d : 0.3333333333333333
float f : 0.33333334

在 Java 中使用 Double.floatValue() 將 Double 轉換為 Float

在 Java 中將 double 值轉換為 float 資料型別的另一種方法是使用包裝類 Double。此類將原始資料型別 double 包裝在一個物件中。

在這裡,我們建立了一個新的 double 物件 db,在建構函式中使用 new 關鍵字傳遞了 double 變數 d;它代表原始的 double 引數。我們使用了 floatValue() 方法,它在縮小原始轉換範圍後將 double 資料型別的值作為浮點數返回。

使用窄基元轉換,我們意識到我們試圖將較大的資料型別儲存到較小的資料型別中,因此可能會丟失一些資訊和精度。在輸出中,我們可以看到 double 被轉換為 float 並且不太精確。

public class JavaDoubleToFloat {
  public static void main(String args[]) {
    double d1 = 1.0;
    double d2 = 3.0;
    double d = d1 / d2;
    System.out.println("double d : " + d);

    Double db = new Double(d);
    float f1 = db.floatValue();
    System.out.println("float f1 : " + f1);
  }
}

輸出:

double d : 0.3333333333333333
float f1 : 0.33333334
作者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

相關文章 - Java Double

相關文章 - Java Float