在 Java 中,进行整数相除操作时,如果操作数都是整数,结果也会是整数,并且小数部分会被丢弃。如果你希望得到一个包含小数部分的结果,你需要将其中至少一个操作数转换为浮点类型(如 double 或 float)。

类型转换

public class DivisionExample {
    public static void main(String[] args) {
        int numerator = 10;
        int denominator = 3;

        // 使用强制类型转换将结果转换为浮点数
        double result = (double) numerator / denominator;

        System.out.println("Result of " + numerator + " / " + denominator + " = " + result);
    }
}

使用 BigDecimal 进行精确计算

如果你希望进行更精确的浮点数运算,可以使用 BigDecimal 类。BigDecimal 提供了高精度的浮点数运算方法。

import java.math.BigDecimal;

public class BigDecimalExample {
    public static void main(String[] args) {
        BigDecimal numerator = new BigDecimal("10");
        BigDecimal denominator = new BigDecimal("3");

        BigDecimal result = numerator.divide(denominator, 10, BigDecimal.ROUND_HALF_UP);

        System.out.println("Result of " + numerator + " / " + denominator + " = " + result);
    }
}

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐