Arithmetic operations with BigDecimal

BigDecimal Arithmetic Operations

Program

import java.math.BigDecimal;
import java.math.RoundingMode;

public class BigDecimalArithmeticDemo {
    public static void main(String[] args) {
        BigDecimal a = new BigDecimal("1234.567");
        BigDecimal b = new BigDecimal("10.5");

        // Addition
        BigDecimal sum = a.add(b);
        System.out.println("Addition: " + a + " + " + b + " = " + sum);

        // Subtraction
        BigDecimal diff = a.subtract(b);
        System.out.println("Subtraction: " + a + " - " + b + " = " + diff);

        // Multiplication
        BigDecimal product = a.multiply(b);
        System.out.println("Multiplication: " + a + " * " + b + " = " + product);

        // Division (with scale and rounding)
        try {
            BigDecimal quotient = a.divide(b, 4, RoundingMode.HALF_UP);
            System.out.println("Division: " + a + " / " + b + " = " + quotient);
        } catch (ArithmeticException e) {
            System.out.println("Exact division not possible: " + e.getMessage());
        }

        // Remainder
        BigDecimal remainder = a.remainder(b);
        System.out.println("Remainder: " + a + " % " + b + " = " + remainder);

        // Power (raise to an integer power)
        BigDecimal power = b.pow(3);  // b^3
        System.out.println("Power: " + b + " ^ 3 = " + power);
    }
}
Scroll to Top