我写的一个关于swtich语句的,来判断输入的是几月份,但是编译出错了
import java.io.*;
public class Month{
public static void main(String[] args) throws IOException{
InputStreamReader reader=new InputStreamReader(System.in);
BufferedReader input=new BufferedReader(reader);
System.out.print("Please input the number:");
int  month=input.readLine();
switch(month){
case 1:System.out.println("January");break;
case 2:System.out.println("February");break;
case 3:System.out.println("March");break;
case 4:System.out.println("April");break;
case 5:System.out.println("May");break;
case 6:System.out.println("June");break;
case 7:System.out.println("July");break;
case 8:System.out.println("August");break;
case 9:System.out.println("September");break;
case 10:System.out.println("October");break;
case 11:System.out.println("November");break;
case 12:System.out.println("December");break;

}
}
}

解决方案 »

  1.   

    int  month=input.readLine();
    这句出错了,  readLine()返回的是String类型,应改成如下语句:
    int month=Integer.parseInt(input.readLine());
      

  2.   

    int  month=input.readLine();出错!
    类型不对
    应该改为:
    int month = 0;
    try{
        month = Integer.parseInt(input.readLine());
    } catch (NumberFormatException e){
        e.printStackTrace();
        System.err.println("字符串转换数字时发生错误!");
        ...
    }
      

  3.   

    case "1":System.out.println("January");break;以下同
      

  4.   

    改为:import java.io.*;
    public class Month{
    public static void main(String[] args) throws IOException{
    InputStreamReader reader=new InputStreamReader(System.in);
    BufferedReader input=new BufferedReader(reader);
    System.out.print("Please input the number:");
                      int month = 0;
                      try{
                          month = Integer.parseInt(input.readLine());
                      } catch (NumberFormatException e){
                          e.printStackTrace();
                      }
    switch(month){
    case 1:System.out.println("January");break;
    case 2:System.out.println("February");break;
    case 3:System.out.println("March");break;
    case 4:System.out.println("April");break;
    case 5:System.out.println("May");break;
    case 6:System.out.println("June");break;
    case 7:System.out.println("July");break;
    case 8:System.out.println("August");break;
    case 9:System.out.println("September");break;
    case 10:System.out.println("October");break;
    case 11:System.out.println("November");break;
    case 12:System.out.println("December");break;

    }
    }
    }
      

  5.   

    也可以这样;
    import java.io.*;
    public class Month{
    public static void main(String[] args) throws IOException{
    InputStreamReader reader=new InputStreamReader(System.in);
    BufferedReader input=new BufferedReader(reader);
    System.out.print("Please input the number:");
                      String month = input.readLine();
      switch(month){
    case "1":System.out.println("January");break;
    case "2":System.out.println("February");break;
    case "3":System.out.println("March");break;
    case "4":System.out.println("April");break;
    case "5":System.out.println("May");break;
    case "6":System.out.println("June");break;
    case "7":System.out.println("July");break;
    case "8":System.out.println("August");break;
    case "9":System.out.println("September");break;
    case "10":System.out.println("October");break;
    case "11":System.out.println("November");break;
    case "12":System.out.println("December");break;

    }
    }
    }