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的值。如果参数值溢出了给定的数据类型,函数就会抛出一个异常。
在本文中,我们将讨论Java中incrementExact()函数的实现和工作原理。我们将编写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中导入math库。
-
将输入值存储在一个变量中,作为整数的最大值,以便在函数中查看值溢出。
-
将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)