Java Math addExact()方法將指定的數(shù)字相加并返回它。
addExact()方法的語(yǔ)法為:
Math.addExact(num1, num2)
注意:addExact()是靜態(tài)方法。因此,我們可以使用類(lèi)名Math來(lái)訪問(wèn)該方法。
num1 / num2 - 要返回其總和的第一個(gè)和第二個(gè)值
注意:這兩個(gè)值的數(shù)據(jù)類(lèi)型應(yīng)為int或long。
返回兩個(gè)值的和
import java.lang.Math; class Main { public static void main(String[] args) { //創(chuàng)建int變量 int a = 24; int b = 33; // 帶int參數(shù)的addExact() System.out.println(Math.addExact(a, b)); // 57 //創(chuàng)建long變量 long c = 12345678l; long d = 987654321l; //帶long參數(shù)的addExact() System.out.println(Math.addExact(c, d)); // 999999999 } }
在上面的示例中,我們使用了Math.addExact()帶有int和long變量的方法來(lái)計(jì)算總和。
如果加法的結(jié)果溢出數(shù)據(jù)類(lèi)型,addExact()方法將引發(fā)異常。也就是說(shuō),結(jié)果應(yīng)該在指定變量的數(shù)據(jù)類(lèi)型的范圍內(nèi)。
import java.lang.Math; class Main { public static void main(String[] args) { //創(chuàng)建int變量。 //最大int值 int a = 2147483647; int b = 1; //帶int參數(shù)的addExact()。 //拋出異常 System.out.println(Math.addExact(a, b)); } }
在上述實(shí)例中,的值a是最大int值和的值b是1。當(dāng)我們添加a和時(shí)b,
2147483647 + 1 => 2147483648 // 超出int類(lèi)型的范圍
因此,addExact()方法引發(fā)整數(shù)溢出異常。