while循环/切换语句

时间:2019-06-16 02:41:55

标签: java while-loop switch-statement

我得到一个“ java.util.NoSuchElementException”,它似乎指向while循环中的Scanner对象。一切正常,并且可以正常打印,但是当它循环遍历时,那里总是有相同的错误。

我试图清除缓冲区。我尝试将扫描仪移出循环。 我尝试移动对象的实例化以及变量本身。

while(loop) {
  printMenu();
  scanA1.next();
        switch (choice) {

Exception in thread "main" java.util.NoSuchElementException

2 个答案:

答案 0 :(得分:1)

可能是因为调用scanA1.next()时没有更多的令牌了。 您可以像这样检查是否还有令牌:

  while(loop) {
    printMenu();
    if (scanA1.hasNext()) { // Checks if there are more tokens to read
        scanA1.next();
            switch (choice) {
...

答案 1 :(得分:0)

是因为我用开关的方法制作了几台不同的扫描仪,所以才关闭了。一旦我删除了.close();循环工作完美。谢谢您的帮助!