练习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编程中的检查型异常与非检查型异常分析等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。