使用Java写出符合下列要求的程序用户输入数字代表天,如果数字值在1-7之间,提示今天是数字对应的星期几,如果输入数字不是1-7之间,则抛出自定义的异常;
时间: 2024-03-11 12:49:06 浏览: 137
好的,以下是符合您要求的Java程序代码:
```java
import java.util.Scanner;
class InvalidDayException extends Exception {
public InvalidDayException(String message) {
super(message);
}
}
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入数字代表的天:");
int day = scanner.nextInt();
scanner.nextLine();
try {
String weekDay = getWeekday(day);
System.out.println("今天是星期" + weekDay);
} catch (InvalidDayException e) {
System.out.println("输入的数字不是1-7之间的整数!");
}
}
public static String getWeekday(int day) throws InvalidDayException {
switch (day) {
case 1:
return "一";
case 2:
return "二";
case 3:
return "三";
case 4:
return "四";
case 5:
return "五";
case 6:
return "六";
case 7:
return "日";
default:
throw new InvalidDayException("输入的数字不是1-7之间的整数!");
}
}
}
```
程序中,我们定义了一个 `InvalidDayException` 异常类,用于抛出输入数字不是1-7之间的整数的自定义异常。在 `main` 方法中,首先让用户输入代表天的数字,然后调用 `getWeekday` 方法获取对应的星期几。如果输入的数字不是1-7之间的整数,`getWeekday` 方法会抛出自定义异常,`main` 方法会捕获该异常并输出相应提示。如果输入的数字在1-7之间,程序会输出今天是星期几的提示。
希望这个程序能够满足您的要求!
阅读全文