java中如何使一段程序循环,现在输入1-12都没有问题,到13就出错。 下面代码:

1packagehomework;23importjava.util.Scanner;45publicclass第一次作业{6publicstaticvoidmain(S... 1 package homework;
2
3 import java.util.Scanner;
4
5 public class 第一次作业 {
6 public static void main(String[] args) {
7 System.out.println("请输入一个月份:");
8 while(true){
9 Scanner scanner=new Scanner(System.in);
10 int n=scanner.nextInt();
11 scanner.close();
12 if(n==1){
13 System.out.println("现在是一月份");
14 break;
15 }else if(n==2){
16 System.out.println("现在是二月份");
17 break;
18 }else if(n==3){
19 System.out.println("现在是三月份");
20 break;
21 }else if(n==4){
22 System.out.println("现在是四月份");
23 break;
24 }else if(n==5){
25 System.out.println("现在是五月份");
26 break;
27 }else if(n==6){
28 System.out.println("现在是六月份");
29 break;
30 }else if(n==7){
31 System.out.println("现在是七月份");
32 break;
33 }else if(n==8){
34 System.out.println("现在是八月份");
35 break;
36 }else if(n==9){
37 System.out.println("现在是九月份");
38 break;
39 }else if(n==10){
40 System.out.println("现在是十月份");
41 break;
42 }else if(n==11){
43 System.out.println("现在是十一月份");
44 break;
45 }else if(n==12){
46 System.out.println("现在是十二月份");
47 break;
48 }else{System.out.println("您输入的月份有误,请重新输入:");
49 }
50 }
51 }
52 }
展开
 我来答
chenhao_89
2017-04-05 · TA获得超过1352个赞
知道小有建树答主
回答量:764
采纳率:83%
帮助的人:420万
展开全部
else{
    System.out.println("您输入的月份有误,请重新输入:");
    break;
}

没有加break

if里每一句都要加break

switch里的default不用加,我觉得你应该是看到了一个switch的例子,转到了if elseif else来写,但是else不等于switch里的default

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
旅初彤2B
2017-04-05 · TA获得超过2.6万个赞
知道大有可为答主
回答量:4.4万
采纳率:65%
帮助的人:5361万
展开全部
scanner.close();这一句删掉
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式