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