寫一個方法void triangle(int a,int b,int c),判斷三個參數是否能構成一個三角形。如果不能則拋出異常IllegalArgumentException,顯示異常信息:a,b,c “不能構成三角形”;如果可以構成則顯示三角形三個邊長。在主方法中得到命令行輸入的三個整數,調用此方法,並捕獲異常。
a<b<c
兩邊之和大於第三邊:a+b>c
兩邊之差小於第三邊:c-a<a
import java.util.Arrays; import java.util.Scanner; public class 三角形判斷 { public static int[] side; public static void main(String[] args) { side=new int[3]; Scanner input=new Scanner(System.in); try { side[0]=input.nextInt(); side[1]=input.nextInt(); side[2]=input.nextInt(); Arrays.sort(side); triangle(side[0],side[1],side[2]); } catch (IllegalArgumentException e) { e.getMessage(); e.printStackTrace(); }catch (Exception e) { e.printStackTrace(); }finally { input.close(); } } public static void triangle(int a,int b,int c)throws Exception{ if((a+b>c)&&(a-b<c)) System.out.println("可以構成三角形"); else throw new IllegalArgumentException("三條邊不能構成三角形"); } }
運行結果:


