不得不承认Scanner类对英文输入支持是非常好的!但是针对中文输入,Scanner的传说中的阻塞问题就出来了!请看下面的小程序:import java.util.Scanner;public class Test {public static void main(String [] args) {
new Test().start();
}
public void start() {
Scanner sc = new Scanner(System.in);
while(true) {
System.out.println("请输入用户名:");
String name = sc.next();
System.out.println("name = " + name);
System.out.println("继续输入吗?(y/n)");
String sure = sc.next();
if(sure.equals("y")) {
continue;
} else {
sc.close();
return;
}
}
}}请复制运行,然后到判断继续输入吗?(y/n)的时候,一定要继续用搜狗输入法,并且不要切换到英文输入模式下就会看到如图所示的情况下,一直卡死。我想这肯定是next()方法里面的readInput()方法导致的!可是,这怎么解决呢?如果这样接受输入的话,势必影响用户的心情!请恕小弟愚昧,实在找不到解决之法,请指教!
添加回答
举报
0/150
提交
取消