JAVAutil。扫描程序Java在线程“main”Java中获取“异常”。util。扫描仪的NoTouchElementException'错误
这是我的代码:我正在尝试创建一个函数,允许用户在完成程序后返回菜单。然而,每当我试图运行代码时,总是会出现“NoTouchElement”错误
import java.io.FileNotFoundException;
import java.util.Scanner;
public class homePage
{
public static void main(String[] args) throws FileNotFoundException
{
Scanner sc = new Scanner (System.in);
Menu.menu();
System.out.println("Would you like to 1:Exit the program or 2: complete another action ");
int newChoice = sc.nextInt();
System.out.println(newChoice);
switch(newChoice)
{
case 1:
Exit exitScreen = new Exit();
exitScreen.exit();
break;
case 2:
Menu.menu();
default:
System.out.println(newChoice + "invalid input");
System.out.println("\n");
main(args);
}
}
}
输出:
Would you like to 1:Exit the program or 2: complete another action
Exception in thread "main" java.util.NoSuchElementException
at java.base/java.util.Scanner.throwFor(Scanner.java:937)
at java.base/java.util.Scanner.next(Scanner.java:1594)
at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
at homePage.main(homePage.java:12)
这里是一个最小的、可重复的示例 这是指菜单类。当用户选择其中一个选项时,它会打印出单词(显示/创建/删除),然后它会询问用户是否完成了打印。如果完成,将显示退出消息,如果未完成,则应再次显示菜单
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Menu
{
public static void menu() throws FileNotFoundException
{
Scanner in = new Scanner(System.in);
System.out.println("Menu \n1 - Display \n2 - Create \n3 - Delete");
int choice = in.nextInt();
System.out.println(choice);
switch (choice)
{
case 1:
System.out.println("Display");
case 2:
System.out.println("Create");
case 3:
System.out.println("delete");
break;
default:
System.out.println("Incorrect Value. Enter a value between 1 and 3");
break;
}
in.close();
}
}
共 (0) 个答案