主要代码
import java.util.Arrays;
import java.util.Scanner;
/**
* 写一个方法void triangle(int a,int b,int c),判断三个参数是否能构成一个三角形。
* 如果不能则抛出异常IllegalArgumentException,显示异常信息:a,b,c “不能构成三角形”;
* 如果可以构成则显示三角形三个边长。
* 在主方法中得到命令行输入的三个整数,调用此方法,并捕获异常。
* @author Vivinia
*
*/
public class Test {
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("三条边不能构成三角形");
}
}
演示效果:
主要代码:
import java.util.InputMismatchException;
import java.util.Scanner;
/**
* 从命令行输入5个整数,放入一整型数组,然后打印输出。要求:
* 如果输入数据不为整数,要捕获输入不匹配异常,显示“请输入整数”;
* 如果输入数据多余5个,捕获数组越界异常,显示“请输入5个整数”。
* 无论是否发生异常,都输出“感谢使用本程序!”
* @author Vivinia
*
*/
public class TestTwo {
public static int[] number;
public static void main(String[] args) {
number=new int[5];
Scanner input=new Scanner(System.in);
try {
for(int i=0;i<6;i++) {
if(i==5)
throw new Exception("请输入5个整数。");
number[i]=input.nextInt();
}
} catch (InputMismatchException e) {
System.err.println("请输入整型数据。");
}catch (Exception e) {
e.getMessage();
e.printStackTrace();
}finally {
input.close();
System.out.println("感谢使用本程序。");
}
}
}