import java.io.*;
class EXP2_10 {
public static void main(String args[]) throws IOException {
char ch;
System.out.println("按 1/2/3 数字键可得大奖!");
System.out.println("按’Q’键可退出循环操作.");
while ((ch=(char)System.in.read())!=' ') {
System.in.skip(2); // 跳过回车键
switch (ch) {
case '1':
System.out.println("恭喜你得大奖,一辆汽车!");
break;
case '2':
System.out.println("不错呀,你得到一台笔记本电脑!");
break;
case '3':
System.out.println("没有白来,你得到一台冰箱!");
break;
case 'q':
System.out.println("欢迎下次再来!");
System.exit(0);
default:
System.out.println("真不幸,你没有奖品!下次再来吧。");
}
}
}
}
在这个程序中,想知道:
System.in.skip(2); 这个函数,具体作用,另外,实验发现,括号里面填大于等于2的数都是可以,求解释啊~~
还有就是,输入:1234,得到的结果是:恭喜你得大奖,一辆汽车!
真不幸,你没有奖品!下次再来吧。
为什么不是:恭喜你得大奖,一辆汽车!
没有白来,你得到一台冰箱!
求高手们帮忙解释下啊~~另外希望知道,这种输入流的的工作方式
class EXP2_10 {
public static void main(String args[]) throws IOException {
char ch;
System.out.println("按 1/2/3 数字键可得大奖!");
System.out.println("按’Q’键可退出循环操作.");
while ((ch=(char)System.in.read())!=' ') {
System.in.skip(2); // 跳过回车键
switch (ch) {
case '1':
System.out.println("恭喜你得大奖,一辆汽车!");
break;
case '2':
System.out.println("不错呀,你得到一台笔记本电脑!");
break;
case '3':
System.out.println("没有白来,你得到一台冰箱!");
break;
case 'q':
System.out.println("欢迎下次再来!");
System.exit(0);
default:
System.out.println("真不幸,你没有奖品!下次再来吧。");
}
}
}
}
在这个程序中,想知道:
System.in.skip(2); 这个函数,具体作用,另外,实验发现,括号里面填大于等于2的数都是可以,求解释啊~~
还有就是,输入:1234,得到的结果是:恭喜你得大奖,一辆汽车!
真不幸,你没有奖品!下次再来吧。
为什么不是:恭喜你得大奖,一辆汽车!
没有白来,你得到一台冰箱!
求高手们帮忙解释下啊~~另外希望知道,这种输入流的的工作方式
然后skip(2),再次赋值ch为4不为“ ”,再次判断得结果: 真不幸,你没有奖品!下次再来吧。
还是因为都是占两个字节,而2代表的是字节呢??