Java Math incrementExact(int x) 方法
我们将通过在 Java 中使用该函数并了解其不同的功能来探索 Java Math incrementExact(int x) 方法。
incrementExact() 函数是 Java 中 Math 库的内置函数。此函数用于返回一个值,该值等于函数中传入的参数加 1。如果函数中作为参数传入的整数值溢出,则该函数会抛出异常,溢出取决于函数中传入的数据类型,即 int 或 long。
语法
函数的语法 -
int a; int incrementExact(a); long a; long incrementExact(a);
函数中传入的参数只是一个整数值,如上所述,可以是 int 或 long 数据类型。返回值等于函数中传入的参数加 1。如果函数中传入的参数值溢出给定数据类型,则该函数会抛出异常。
在本文中,我们将讨论 incrementExact() 函数在 Java 中的实现及其工作原理。我们将编写一段 Java 代码,其中我们将获得一个数字作为输入,我们需要使用 incrementExact() 函数打印等于输入值加 1 的值。
让我们通过以下示例来了解问题。
INPUT : x=6
OUTPUT : 7
说明 - 在这里,我们得到一个等于 6 的整数。我们需要使用 incrementExact() 输出打印等于给定整数加 1 的值。因此,输出将为 7。
INPUT : x= -10
OUTPUT : -9
说明 - 给定的整数值为 -10。使用 incrementExact() 函数,将 x 作为参数传入函数,我们将得到等于 x 加 1 的值,该值将等于 -9,这是所需的输出。
让我们在 Java 代码中实现 incrementExact() 函数,以了解如何实现该函数及其工作原理。
Java 程序以查看 incrementExact() 函数的功能
在代码中实现该函数需要遵循以下步骤。
使用 java.lang.Math 导入 java 数学库。
初始化一个变量以存储代码中的输入。
然后,我们将再次创建一个变量来存储 incrementExact() 函数的输出,其中传入的参数将是输入变量。
返回我们存储函数返回值的变量,该返回值将等于输入变量的值加 1,即我们所需的输出。
示例
函数实现的 Java 代码 -
//Java Code to see the implementation of the incrementExact() function import java.lang.Math; //to import the math library public class Main { public static void main(String [] args) { //to store the input value long x; x=1578; //to store the value returned by the incrementExact() function long ans; ans=Math.incrementExact(x); //passing the parameter as input value //printing the output of the function System.out.println("The output after the implementation of the function : "+ans); } }
输出
The output after the implementation of the function : 1579
时间复杂度 - O(1),因为执行函数中的操作需要常数时间。
空间复杂度 - O(1),因为不需要额外的空间。
Java 程序以查看函数输出何时溢出
实现 incrementExact() 函数的步骤如下。
使用 java.lang.Math 在 Java 中导入数学库。
将输入值存储在一个变量中,作为整数的最大值,以查看函数中值的溢出情况。
将函数 incrementExact() 的输出存储在一个变量中,其中函数中的传入参数是输入值。
由于函数中传入的参数是整数的最大值,当加 1 时会显示值溢出,因此代码将显示整数溢出异常。
示例
查看整数溢出的 Java 代码
//Java Code to see the implementation of the incrementExact() function import java.lang.Math; //to import the math library public class Main { public static void main(String [] args) { //to store the input value long x; x=Long.MAX_VALUE; //to store the value returned by the incrementExact() function long ans; ans=Math.incrementExact(x); //passing the parameter as input value //printing the output of the function System.out.println(ans); } }
输出
Exception in thread "main" java.lang.ArithmeticException: integer overflow at java.base/java.lang.Math.incrementExact(Math.java:964) at Main.main(Main.java:14)