使用java编写【问题描述】 从键盘接收某工厂三名保安年龄,当某保安年龄大于60 或者小于 18 时,抛出一个异常(Exception),提示“age input error”。最后统计该工厂保安平均年龄。 【输入形式/输出形式】 正常:从键盘录入三个整数:56 45 36 输出:45 异常:从键盘录入三个整数:56 -1 36 输出: Exception in thread "main" java.lang.Exception: age input error at Example02
时间: 2024-03-27 21:37:08 浏览: 56
基于java时区转换夏令时的问题及解决方法
5星 · 资源好评率100%
以下是 Java 代码实现:
```
import java.util.Scanner;
class AgeInputException extends Exception{
public AgeInputException(String message){
super(message);
}
}
public class Example02 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] ages = new int[3];
int sum = 0;
for(int i = 0; i < 3; i++){
ages[i] = sc.nextInt();
try{
if(ages[i] > 60 || ages[i] < 18){
throw new AgeInputException("age input error");
}
sum += ages[i];
}catch(AgeInputException e){
System.out.println("Exception in thread \"main\" " + e.getMessage() + " Exception\tat Example02");
}
}
System.out.println(sum / 3);
}
}
```
程序运行后,会提示输入三个整数,分别代表三名保安的年龄。如果输入的年龄大于 60 或者小于 18,就会抛出自定义异常 AgeInputException,并且输出异常信息和行号;如果输入的年龄都在合法范围内,就会输出这三个年龄的平均值。
阅读全文