异常处理课堂练习1

来源:互联网 发布:联想网络同传怎么用 编辑:程序博客网 时间:2024/05/21 08:49

写一个方法void triangle(int a,int b,int c),判断三个参数是否能构成一个三角形。如果不能则抛出异常IllegalArgumentException,显示异常信息:a,b,c “不能构成三角形”;如果可以构成则显示三角形三个边长。在主方法中得到命令行输入的三个整数,调用此方法,并捕获异常。

import java.util.*;  public class triangleException {      // 声明 IllegalArgumentException 异常      public void triangle(int a,int b,int c) throws IllegalArgumentException {          // 如果两边之和大于第三边 并且 两边之差小于第三边,就输出三条边长          if(a+b>c && c-a<b ) {               System.out.printf("三角形的三边长分别是:%d%d%d",a,b,c);          }          //否则抛出异常          else {              throw new IllegalArgumentException("不能构成三角形");          }      }  }  
import java.lang.reflect.Array;  import java.util.*;  public class Test {        public static void main(String[] args) {          //创建对象        triangleException t=new triangleException();        Scanner s=new Scanner(System.in);        //定义数组        int n[]=new int[3];        System.out.println("请输入三角形的三条边");        //通过输入三角形的三条边        for(int i=0;i<3;i++) {            n[i]=s.nextInt();        }        //对数组中的元素进行排序,升序排序        Arrays.sort(n);        try {            t.triangle(n[0], n[1], n[2]);  //调用可能发生异常的方法         }catch(IllegalArgumentException e) {  //捕获IllegalArgumentException异常            System.err.printf("长度为%d%d%d的三条边不能构成三角形",n[0],n[1],n[2]);        }catch(InputMismatchException e) {  //捕获不匹配异常            System.err.println("三角形的边长应为整数");        }        }    }  


原创粉丝点击