关于switch语句的一些问题请教大家!

yztlg 2004-12-27 04:46:02
请大家看看:
public class Demo1 {

public static void main(String[] args)throws java.io.IOException{
char b;
String a="";
System.out.print("请输入月份:");
b=(char)(System.in.read());

switch(b){
case '12':
case '1':
case '2':

a="Spring";
break;
case '3':
case '4':
case '5':

a="Summer";
break;
case '6':
case '7':
case '8':

a="Augest";
break;
case '9':
case '10':
case '11':
a="Winter";
break;

}
System.out.println("Seasons is:"+a);
}

}
我的问题是我的b声明的是char型,但是对于10这样的2位数是无效的。可我把b声明为int时,根本不会打印出我所要得季节的结果。听人说是因为System.in.read()只支持单字符,那请问什么函数支持我输入字符串呢?
...全文
101 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yztlg 2005-01-11
  • 打赏
  • 举报
回复
说个真正可行的办法吧?
jiangx123 2005-01-11
  • 打赏
  • 举报
回复
b 是 int 了
但case '12' 什么的也要改成int啊
seraph2 2005-01-11
  • 打赏
  • 举报
回复
switch(b){
case '12':
case '1':
case '2':

a="Spring";
break;
case '3':
case '4':
case '5':

a="Summer";
break;
case '6':
case '7':
case '8':

a="Augest";
break;
case '9':
case '10':
case '11'
呵呵,你用10以内的数的时候还是数字型的,如果你想不一样的话,最好的办法换成INT型
防止SWITCH出错!

23,407

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧