异常处理课堂练习1

本文介绍了一个Java程序,该程序通过用户输入三个整数值来判断这些值是否能够构成一个有效的三角形。若不能构成三角形,则会抛出异常并提示用户;若能构成,则输出三角形的边长。此外,程序还包含了对输入值的排序和异常捕获处理。

写一个方法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("三角形的边长应为整数");  
      }  
  
    }  
  
}  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值