【发布时间】:2017-05-23 17:42:17
【问题描述】:
我不知道如何获取月份的输入以匹配 case #。我有点知道该怎么做,但不确定要在我的代码中添加什么才能使其正常工作。
这是作业:
编写一个程序,提示用户输入月份名称,然后使用开关显示季节名称。假设春季月份是三月、四月和五月;夏季是六月、七月、八月;秋天是九月、十月、十一月;冬天是十二月,一月,二月。您必须使用开关。对于完整点,您的开关代码应该证明语句的经济性,并且它应该以错误消息响应错误输入
这是我目前所拥有的:
import java.util.Scanner;
public class Assignment4 {
private static Scanner input;
public static void main(String[] args) {
input = new Scanner(System.in);
System.out.println("Enter the name of a month");
int month = input.nextInt();
switch (month) {
case 12: season = "winter"; break;
case 1: season = "winter"; break;
case 2: season = "winter"; break;
case 3: season = "spring"; break;
case 4: season = "spring"; break;
case 5: season = "spring"; break;
case 6: season = "summer"; break;
case 7: season = "summer"; break;
case 8: season = "summer"; break;
case 9: season = "fall"; break;
case 10: season = "fall"; break;
case 11: season = "fall"; break;
default: System.out.println("Error: invalid month.");
}
System.out.println("The season of the month " + month + "is " + season + ".");
}}
【问题讨论】:
-
...什么不起作用?请修正你的缩进。
-
Enter the name,但您正在检查月份数! -
为了更经济的语句,您可以对 case 语句使用 fallthrough - 尽管这在专业代码中不是一件好事(容易出错,因为您也可能忘记了 break 语句):@ 987654323@
标签: java switch-statement java.util.scanner