Java decrementExact()

Giới thiệu về Java DecrementExact()

Trong Java, decrementExact() là một phương thức thuộc lớp Math được giới thiệu trong Java 8. Phương thức này được sử dụng để giảm giá trị của một số nguyên và ném ra ngoại lệ nếu kết quả vượt quá giới hạn của kiểu dữ liệu.

Cú pháp

Math.decrementExact(int x)
Math.decrementExact(long x)

Trong đó:

  • x: là giá trị số nguyên (int hoặc long) bạn muốn giảm đi 1.

Các điểm cần lưu ý

Phương thức decrementExact() sẽ trừ 1 từ giá trị đã cho và kiểm tra xem kết quả có nằm trong giới hạn của kiểu dữ liệu hay không. Nếu kết quả nằm ngoài giới hạn, nó sẽ ném ra một ArithmeticException.

Ví dụ sử dụng

Ví dụ 1: Sử dụng decrementExact với kiểu int

public class Example {
    public static void main(String[] args) {
        int x = 5;
        int result = Math.decrementExact(x);
        System.out.println("Giá trị sau khi giảm 1: " + result);
    }
}

Kết quả sẽ là: 4

Ví dụ 2: Sử dụng decrementExact với kiểu long

public class Example {
    public static void main(String[] args) {
        long y = 10L;
        long result = Math.decrementExact(y);
        System.out.println("Giá trị sau khi giảm 1: " + result);
    }
}

Kết quả sẽ là: 9

Ví dụ 3: Thao tác với giá trị giới hạn

public class Example {
    public static void main(String[] args) {
        try {
            int minValue = Integer.MIN_VALUE;
            // Điều này sẽ ném ra ngoại lệ vì không thể giảm giá trị này hơn nữa
            Math.decrementExact(minValue);
        } catch (ArithmeticException e) {
            System.out.println("Ngoại lệ: " + e.getMessage());
        }
    }
}

Kết quả sẽ là: Ngoại lệ: Integer underflow

Kết luận

Phương thức decrementExact() là một công cụ hữu ích trong Java để đảm bảo rằng các phép toán trên kiểu số nguyên luôn được kiểm tra về tính hợp lệ. Phương thức này giúp bạn tránh được những lỗi liên quan đến tràn số (overflow) hoặc thiếu số (underflow) khi làm việc với giá trị số nguyên.