java.strictmath.lang.decrementExact() es una función integrada en Java que devuelve el argumento disminuido en uno, lanzando una excepción si el resultado desborda el tipo de datos especificado, ya sea long o int, según el tipo de datos que se haya utilizado en el argumento del método. Dado que esto es decremento, el único escenario en el que estaremos golpeando una excepción si el resultado es menor que el valor mínimo. El valor mínimo se puede derivar de Long.MIN_VALUE o Integer.MIN_VALUE.
Sintaxis:
int decrementExact(int num) long decrementExact(long num)
Parámetro: la función acepta un parámetro obligatorio como se muestra arriba y se describe a continuación:
num: el parámetro especifica el número que se debe reducir.
Valor devuelto: la función devuelve el argumento disminuido en uno, lanzando una excepción si el resultado desborda el tipo de datos especificado, ya sea long o int, según el tipo de datos que se haya utilizado en el argumento del método.
Ejemplos:
Input : 12 Output : 11 Input : -3 Output : -4
Programa 1: Programa para demostrar el funcionamiento de la función
Java
// Java program to demonstrate working // of java.lang.Math.decrementExact() method import java.lang.Math; class Gfg1 { // driver code public static void main(String args[]) { int y = 12; System.out.println(Math.decrementExact(y)); int x = -3; System.out.println(Math.decrementExact(x)); } }
Producción:
11 -4
Programa 2: Programa para demostrar el desbordamiento en la función
Java
// Java program to demonstrate overflow // of java.lang.Math.decrementExact() method import java.lang.Math; class Gfg1 { // driver code public static void main(String args[]) { int y = Integer.MIN_VALUE; System.out.println(Math.decrementExact(y)); } }
Producción:
Exception in thread "main" java.lang.ArithmeticException: integer overflow at java.lang.Math.decrementExact(Math.java:943) at Gfg1.main(File.java:12)