【发布时间】:2017-02-22 12:05:51
【问题描述】:
我正在使用扫描仪来处理用户输入的句子,如果出现“嘿”这个词,它就会添加到扫描仪中。所以基本上是字数。如何在不使用类似
的情况下跳出无限 while(scan.hasNext()) 循环if(scan.next().equals("exit")
break;
我无法以这种方式打破循环,因为我得到了无法更改的输入。
public static void main(String args[]) {
Scanner scan = new Scanner(System.in);
String speedLimit;
int c = 0;
while(scan.hasNext()){
if (scan.next().equals("hey")){
c++;
}
}
System.out.println(c);
}
【问题讨论】:
-
while(scan.hasNext())不是无限循环。它会在到达输入结束时停止。 -
使用
scan.next()会消耗一个令牌。 -
具有下一个循环最终永远等待输入。
-
@synchronizer 还有其他方法可以从系统输入中搜索和统计单词吗?