您好,登錄后才能下訂單哦!
這篇文章主要介紹java異常處理之try-catch結構的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
從鍵盤接收兩個整數,輸出兩數的商:
package java_exception; import java.util.Scanner; public class TryDemoOne { public static void main(String[] args) { //定義兩個整數,鍵盤輸入兩個整數,輸出兩數之商 Scanner input = new Scanner(System.in); System.out.println("=====運算開始====="); System.out.print("請輸入第一個整數:"); int one = input.nextInt(); System.out.print("請輸入第二個整數:"); int two = input.nextInt(); System.out.println("one和two的商為:"+ (one/two)); System.out.println("=====運算結束====="); } }
若此時將0或字母作為除數,程序必然會報錯。
為了處理這種錯誤的發生,可以引入try-catch來避免程序報錯而終止運行。
在可能出現異常的位置引入try-catch結構,當程序某一句發生錯誤,就會輸出catch中自己設置的報錯內容(程序出現錯誤
!),其中 e.printStackTrace();
語句會打印出錯的詳情信息,在終端打印的位置隨機,若沒有該語句,就只會輸出自己設置的報錯內容,程序正常運行。:
try{ System.out.print("請輸入第一個整數:"); int one = input.nextInt(); System.out.print("請輸入第二個整數:"); int two = input.nextInt(); System.out.println("one和two的商為:"+ (one/two)); }catch(Exception e){ System.out.println("程序出現錯誤!"); e.printStackTrace(); //打印出錯的詳情信息,在終端打印的位置隨機 }
輸出:
1.輸入兩個整數
=====運算開始=====
請輸入第一個整數:15
請輸入第二個整數:5
one和two的商為:3
=====運算結束=====
2.將字母a作為除數輸入
=====運算開始===== 請輸入第一個整數:15 請輸入第二個整數:s 程序出現錯誤! java.util.InputMismatchException at java.base/java.util.Scanner.throwFor(Scanner.java:939) at java.base/java.util.Scanner.next(Scanner.java:1594) at java.base/java.util.Scanner.nextInt(Scanner.java:2258) at java.base/java.util.Scanner.nextInt(Scanner.java:2212) at java_exception.TryDemoOne.main(TryDemoOne.java:21) =====運算結束=====
3.將0作為除數輸入
=====運算開始===== 請輸入第一個整數:15 請輸入第二個整數:0 程序出現錯誤! java.lang.ArithmeticException: / by zero at java_exception.TryDemoOne.main(TryDemoOne.java:22) =====運算結束=====
如果要保證在catch包含的語句之后的結果正常輸出,可以加上finally:
try{ System.out.print("請輸入第一個整數:"); int one = input.nextInt(); System.out.print("請輸入第二個整數:"); int two = input.nextInt(); System.out.println("one和two的商為:"+ (one/two)); }catch(Exception e){ System.out.println("程序出現錯誤!"); e.printStackTrace(); //打印出錯的詳情信息,在終端打印的位置隨機 }finally{ System.out.println("=====運算結束====="); }
以上是“java異常處理之try-catch結構的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。