negateExact()
方法的语法为:
Math.negateExact(num)
这里, negateExact()
是静态方法。因此,我们使用类名Math
来访问该方法。
negateExact()参数
negateExact()
方法采用单个参数。
- num-要反转其符号的参数
注意 :参数的数据类型应为int
或long
。
negateExact()返回值
- 反转指定参数的符号后返回值
示例1:Java Math.negateExact()
class Main {
public static void main(String[] args) {
// create int variables
int a = 65;
int b = -25;
// negateExact() with int arguments
System.out.println(Math.negateExact(a)); // -65
System.out.println(Math.negateExact(b)); // 25
// create long variable
long c = 52336L;
long d = -445636L;
// negateExact() with long arguments
System.out.println(Math.negateExact(c)); // -52336
System.out.println(Math.negateExact(d)); // 445636
}
}
在上面的示例中,我们将Math.negateExact()
方法与int
和long
变量一起使用来反转各个变量的符号。
示例2:Math.negateExact()引发异常
如果求反结果溢出数据类型,则negateExact()
方法将引发异常。也就是说,结果应在指定变量的数据类型范围内。
class Main {
public static void main(String[] args) {
// create a int variable
// minimum int value
int a = -2147483648;
// negateExact() with the int argument
// throws exception
System.out.println(Math.negateExact(a));
}
}
在上述例子中,a的值是最小int
值。这里, negateExact()
方法更改变量a的符号。
-(a)
=> -(-2147483648)
=> 2147483648 // out of range of int type
因此, negateExact()
方法将引发integer overflow
异常。
推荐的教程
- Math.incrementExact()
- Math.decrementExact()