8.编写一个除法计算器,程序具有try-catch-finally结构,程序要求用户输入除数和被除数,在出现除数为零(异常2)和除数、被除数中有一个不是数字(异常1)的情况时进行相应的处理。当调用存放在数组中的计算结果,数组有可能产生索引越界(异常3),对这种情况进行捕捉和处理。
import java.util.InputMismatchException;
import java.util.Scanner;
public class Divider {
public static void main(String[] args) {
int result[] = { 0, 1, 2 };
int oper1 = 0;
int oper2 = 0;
Scanner in = new Scanner(System.in);
try {
System.out.print("请输入除数:");
oper1 = in.nextInt();
System.out.print("请输入被除数:");
oper2 = in.nextInt();
result[2] = oper2 / oper1;
System.out.println("计算结果:" + result[3]);
} catch (InputMismatchException e1) {
System.out.println("异常1:输入不为数字!");
} catch (ArithmeticException e2) {
System.out.println("异常2:除数不能为零!");
} catch (ArrayIndexOutOfBoundsException e3) {
System.out.println("异常3:数组索引越界!");
} catch (Exception e4) {
System.out.println("其他异常4:" + e4.getMessage());
} finally {
System.out.println("最后要执行的内容5!");
}
}
}
本文档描述了一个具有异常处理的除法计算器程序。程序采用try-catch-finally结构,确保在用户输入除数为零、输入非数字或者数组索引越界时能捕获并处理这些异常。当遇到除数为零时,会进行特定的错误提示;如果输入的除数或被除数不是数字,也会有相应异常处理;同时,对于数组索引越界的情况,同样进行了异常处理,以保证程序的健壮性。
3070

被折叠的 条评论
为什么被折叠?



