HOWTO · Java

Java 中的 double 除法

清除整數 double 除法混淆

本頁內容

在這裡,在本指南中,我們將清除 Java 中雙除法中出現的混淆。要完全理解這一點,我們需要熟悉 Java 中的資料型別。看看下面的規則。

  1. 兩個整數之間的任何算術運算都會給出一個整數作為輸出。
  2. integer 和 double 之間的任何算術運算都會給出 double 值。

你可以說資料型別 double 的優先順序高於整數,因此任何涉及 double 和 integer 的運算都會給出 double 值。

Java 中的整數 double 除法

看看下面的程式碼。

import java.util.*;
import javax.naming.spi.DirStateFactory.Result;
public class Main {
  public static void main(String args[]) {
    int x = 8;
    int y = 30;
    double z = y / x;
    System.out.println(z);
  }
}

你認為這個程式會給出什麼輸出?3.0 或 3.75。它將是 3.0,因為我們只是將兩個整數相除,給出一個整數作為輸出,在本例中為 3。我們將此輸出儲存在 double z 中,由於資料型別為 double,它變成了 3.0。

因此,我們需要應用強制轉換以獲得以下程式碼可以執行的精確輸出。

import java.util.*;
import javax.naming.spi.DirStateFactory.Result;
public class Main {
  public static void main(String args[]) {
    int x = 8;
    int y = 30;
    double z = (double) y / x;
    System.out.println(z);
  }
}

輸出:

3.75

在這裡,(double) 用於 Java 中的型別轉換。因此,yx 都變成了 double。除法後,輸出將以 double 資料型別儲存 z,這也是一個 double。因此,輸出將為 3.75。