Java程式用於整數減法並檢查溢位
在本文中,我們將減去兩個整數並檢查結果是否導致Java中的溢位。為了檢查整數溢位,我們需要將Integer.MAX_VALUE與減法結果進行比較,這裡,Integer.MAX_VALUE是Java中整數的最大值。讓我們看一個減去整數的例子,如果結果大於Integer.MAX_VALUE,則會丟擲一個異常。
問題陳述
用Java編寫一個程式來減去整數並檢查溢位 -
輸入
val1 = 9898999
val2 = 8784556
輸出
Value1: 9898999
Value2: 8784556
Subtraction Result: 1114443
減去整數並檢查溢位的步驟
以下是減去整數並檢查溢位的步驟 -
- 宣告兩個整數變數,val1和val2,併為其賦值。
- 列印val1和val2的值。
- 將兩個整數轉換為long型別並執行減法,並將結果儲存在變數sub中。
- 檢查sub是否大於Integer.MAX_VALUE。
- 如果條件為真,則丟擲帶有訊息“Overflow!”的ArithmeticException異常。
- 如果沒有丟擲異常,則列印轉換回整數型別的減法結果。
Java程式用於整數減法並檢查溢位
以下是一個顯示如何檢查整數溢位的示例 -
public class Demo { public static void main(String[] args) { int val1 = 9898999; int val2 = 8784556; System.out.println("Value1: "+val1); System.out.println("Value2: "+val2); long sub = (long)val1 - (long)val2; if (sub > Integer.MAX_VALUE) { throw new ArithmeticException("Overflow!"); } // displaying subtraction result System.out.println("Subtraction Result: "+(int)sub); } }
輸出
Value1: 9898999 Value2: 8784556 Subtraction Result: 1114443
程式碼解釋
程式初始化兩個整數val1和val2,並列印它們的值。在減法之前,兩個整數都轉換為long型別以避免操作期間溢位。減法的結果儲存在sub中。然後,程式檢查sub是否超過Integer.MAX_VALUE,如果是,則丟擲ArithmeticException異常。如果不是,則列印減法的結果,並將其轉換回整數型別。
廣告