您好,登錄后才能下訂單哦!
練習1
寫一個方法void triangle(int a,int b,int c),判斷三個參數是否能構成一個三角形。如果不能則拋出異常IllegalArgumentException,顯示異常信息:a,b,c “不能構成三角形”;如果可以構成則顯示三角形三個邊長。在主方法中得到命令行輸入的三個整數,調用此方法,并捕獲異常。
兩邊之和大于第三邊:a+b>c
兩邊之差小于第三邊:c-a
package 異常; import java.util.Arrays; import java.util.InputMismatchException; import java.util.Scanner; public class TestTriangle { public static void triangle(int a, int b,int c) throws IllegalArgumentException, InputMismatchException{ int x[] = new int[3]; x[0] = a; x[1] = b; x[2] = c; Arrays.sort(x); if ((x[0]+x[1]>x[2])&&(x[2]-x[1]<x[0])) System.out.println("三角形的三邊長為:"+a+","+b+","+c); else throw new IllegalArgumentException(); } public static void main(String[] args) { int a=0, b=0, c=0; Scanner in = new Scanner(System.in); System.out.println("請分別輸入三角形的三邊長:"); try{ a = in.nextInt(); b = in.nextInt(); c = in.nextInt(); triangle(a, b, c); }catch(InputMismatchException e1){ System.err.println("請輸入整數作為三角形的邊長!"); e1.printStackTrace(); }catch(IllegalArgumentException e2){ System.err.println(a+","+b+","+c+"不能構成三角形"); } } }
練習2:
從命令行輸入5個整數,放入一整型數組,然后打印輸出。要求:
如果輸入數據不為整數,要捕獲輸入不匹配異常,顯示“請輸入整數”;如果輸入數據多余5個,捕獲數組越界異常,顯示“請輸入5個整數”。
無論是否發生異常,都輸出“感謝使用本程序!”
package 異常; import java.util.InputMismatchException; import java.util.Scanner; public class TestArray { public static void main(String[] args) { int a[] = new int[5]; System.out.println("請輸入5個數:"); System.out.println("最后輸入一個非數字結束輸入操作。"); Scanner in = new Scanner(System.in); try{ int i = 0; while(in.hasNextDouble()){ a[i] = in.nextInt(); i++; } if(i<5) throw new ArrayIndexOutOfBoundsException(); for(int j=0;j<5;j++) System.out.print(a[j]+" "); System.out.println(); }catch(InputMismatchException e1){ System.err.println("請輸入整數作為數組元素!"); e1.printStackTrace(); }catch(ArrayIndexOutOfBoundsException e2){ System.err.println("請輸入5個數!"); e2.printStackTrace(); }finally{ System.out.print("感謝使用本程序!"); } } }
總結
以上就是本文關于Java編程異常簡單代碼示例的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站:Java異常退出條件的判斷示例代碼、Java編程異常處理最佳實踐【推薦】、Java編程中的檢查型異常與非檢查型異常分析等,有什么問題可以隨時留言,小編會及時回復大家的。感謝朋友們對本站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。