public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
if (sc.next().equals("exit")){
System.out.println("EXITING");
System.exit(0);
} else {
System.out.println("IM STILL WORKING ok?");
}
}
}
}所以,这是我前几天写的一段代码,试图弄清楚一些东西(实际上并不重要)。执行此代码的结果是:
eIM还能工作吗?
eIM还能工作吗?
出口
我还在工作,好吗?
出口
正在退出
有人能解释一下为什么会发生这种情况吗?我的意思是,事实上,扫描仪没有捕捉到单词exit的第一次出现。
发布于 2011-01-16 09:54:38
这段代码是正确的,它对我来说也是有效的--您确定您已经编译并运行了最新的代码吗?
e
IM STILL WORKING ok?
e
IM STILL WORKING ok?
e
IM STILL WORKING ok?
ex
IM STILL WORKING ok?
exit
EXITING发布于 2011-01-16 10:31:54
我想我知道问题出在哪里了。现在就复制了..。按了几次输入按钮(按钮e),然后按下快速返回按钮(enter)。这就是为什么有些行既有输入又有输出。在此之后,扫描程序将无法获取第一次出现的退出。这对我来说没有多大意义,因为我认为我所做的应该不会造成任何麻烦。
https://stackoverflow.com/questions/4703322
复制相似问题