Java Math decrementExact()方法從指定的變量中減去1并返回它。
decrementExact()方法的語法為:
Math.decrementExact(num)
注意:decrementExact()是靜態(tài)方法。因此,我們可以使用Math類名來訪問該方法。
num - 從中減去1的參數(shù)
注意:參數(shù)的數(shù)據(jù)類型應(yīng)為int或long。
從參數(shù)中減去1后返回值
class Main { public static void main(String[] args) { //創(chuàng)建int變量 int a = 65; // 帶int argumen的decrementExact()t System.out.println(Math.decrementExact(a)); // 64 // 創(chuàng)建一個long變量 long c = 52336L; // 使用LONG參數(shù)decrementExact() System.out.println(Math.decrementExact(c)); // 52335 } }
在上面的示例中,我們使用了帶有int和long變量的Math.downmentExact()方法從各自的變量中減去1。
如果減法的結(jié)果溢出數(shù)據(jù)類型,則decrementExact()方法將引發(fā)異常。也就是說,結(jié)果應(yīng)在指定變量的數(shù)據(jù)類型范圍內(nèi)。
class Main { public static void main(String[] args) { //創(chuàng)建一個int變量 //最小int值 int a = -2147483648; //使用int參數(shù)的decrementExact() //引發(fā)異常 System.out.println(Math.decrementExact(a)); } }
在上面的示例中,a的值為int最小值。在此,decrementExact()方法從中減去1a。
a - 1 => -2147483648 - 1 => -2147483649 // out of range of int type
因此,decrementExact()方法引發(fā)integer overflow異常。