JAVA基础问题4.7

来源:百度知道 编辑:UC知道 时间:2024/05/06 14:27:22
import java.io.*;
class jex{
public static void main(String args[])throws IOException{
System.out.println("请输入月份: ");
int month=System.in.read();
month-=48;
String season="";
switch(month){
case 0:
case 1:
case 2:season="在冬季";break;
default:season="输入错误!~";
}
System.out.println(month+"月"+season);
}
}

我试过把程序改为 case 0,1,2: 但是不行,想知道有没有办法一次输完,不要老case,case,case.

------------------------------napolun---------------------------

这样不行 12月就变 1 月了
改一下!!这样 你复制下来看看结果!!
(增加改变代码有注释)

import java.io.*;
class jex{
public static void main(String args[])throws IOException{
//添加输入流缓冲区
BufferedReader keyInC=new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入月份: ");
int month=Integer.parseInt(keyInC.readLine()); //System.in.read()改变keyInC.readLine()
//去掉month-=48;代码
String season="";
switch(month){
case 12: case 1:case 2:season="在冬季";break;
case 3: case 4:case 5:season="在春季";break;
case 6: case 7:case 8:season="在夏季";break;
case 9: case 10: case 11:season="在秋季";break;
default:season="月份输入错误!~";
}
System.out.println(month+"月"+season);
}
}

-----------------不清楚发消息给我--------------------

语法就这么规定的,没有办法啊,这是最简单的办