java返回上一级菜单的代码
时间: 2023-11-26 11:04:25 浏览: 518
如果你是在控制台中实现菜单功能,你可以使用以下代码实现返回上一级菜单:
```java
Scanner scanner = new Scanner(System.in);
int choice = 0;
while (true) {
System.out.println("1. 选项1");
System.out.println("2. 选项2");
System.out.println("3. 返回上一级菜单");
System.out.print("请输入您的选择:");
choice = scanner.nextInt();
switch (choice) {
case 1:
// 处理选项1
break;
case 2:
// 处理选项2
break;
case 3:
// 返回上一级菜单
return;
default:
System.out.println("输入有误,请重新输入!");
break;
}
}
```
在这个例子中,当用户选择“返回上一级菜单”时,代码中的 `return` 语句会结束当前方法的执行,从而返回到调用该方法的上一级菜单。
相关问题
Java怎么实现返回上级菜单请用Java写一串简单的代码
以下是一个简单的Java代码示例,演示如何通过递归函数实现返回上级菜单:
```java
import java.util.Scanner;
public class Menu {
public static void main(String[] args) {
showMainMenu();
}
public static void showMainMenu() {
System.out.println("1. 子菜单1");
System.out.println("2. 子菜单2");
System.out.println("3. 返回上级菜单");
Scanner scanner = new Scanner(System.in);
int choice = scanner.nextInt();
switch (choice) {
case 1:
showSubMenu1();
break;
case 2:
showSubMenu2();
break;
case 3:
System.out.println("返回上级菜单");
showMainMenu();
break;
default:
System.out.println("无效的选择");
showMainMenu();
break;
}
}
public static void showSubMenu1() {
System.out.println("1. 子菜单1-1");
System.out.println("2. 子菜单1-2");
System.out.println("3. 返回上级菜单");
Scanner scanner = new Scanner(System.in);
int choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.println("执行子菜单1-1");
break;
case 2:
System.out.println("执行子菜单1-2");
break;
case 3:
System.out.println("返回上级菜单");
showMainMenu();
break;
default:
System.out.println("无效的选择");
showSubMenu1();
break;
}
}
public static void showSubMenu2() {
System.out.println("1. 子菜单2-1");
System.out.println("2. 子菜单2-2");
System.out.println("3. 返回上级菜单");
Scanner scanner = new Scanner(System.in);
int choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.println("执行子菜单2-1");
break;
case 2:
System.out.println("执行子菜单2-2");
break;
case 3:
System.out.println("返回上级菜单");
showMainMenu();
break;
default:
System.out.println("无效的选择");
showSubMenu2();
break;
}
}
}
```
在该示例中,`showMainMenu()`函数显示主菜单,并根据用户输入调用不同的子菜单函数。当用户选择“返回上级菜单”时,调用`showMainMenu()`函数以返回上一级菜单。子菜单函数的实现类似,只是菜单内容不同。
JAVA如何实现返回程序上级菜单
在Java中,返回程序上级菜单可以通过使用栈来实现。你可以将每个菜单选项对应的操作封装成一个方法,并在该方法中调用另一个方法显示下级菜单,同时将当前菜单选项入栈。当下级菜单操作完成后,返回上级菜单时,可以从栈中取出上级菜单选项,再次调用该选项对应的方法即可返回上级菜单。
以下是一个简单的示例代码:
```java
import java.util.Stack;
import java.util.Scanner;
public class Menu {
private Stack<String> menuStack;
private Scanner scanner;
public Menu() {
menuStack = new Stack<>();
scanner = new Scanner(System.in);
}
public void showMainMenu() {
menuStack.clear();
while (true) {
System.out.println("===主菜单===");
System.out.println("1. 子菜单A");
System.out.println("2. 子菜单B");
System.out.println("3. 退出");
System.out.print("请选择操作:");
String input = scanner.nextLine();
switch (input) {
case "1":
showSubMenuA();
break;
case "2":
showSubMenuB();
break;
case "3":
System.exit(0);
default:
System.out.println("输入有误,请重新选择!");
}
}
}
private void showSubMenuA() {
menuStack.push("主菜单");
while (true) {
System.out.println("===子菜单A===");
System.out.println("1. 操作1");
System.out.println("2. 返回上级菜单");
System.out.print("请选择操作:");
String input = scanner.nextLine();
switch (input) {
case "1":
System.out.println("执行操作1");
break;
case "2":
if (!menuStack.empty()) {
String parentMenu = menuStack.pop();
System.out.println("返回" + parentMenu);
return;
} else {
System.out.println("已经是最上级菜单了!");
}
break;
default:
System.out.println("输入有误,请重新选择!");
}
}
}
private void showSubMenuB() {
menuStack.push("主菜单");
while (true) {
System.out.println("===子菜单B===");
System.out.println("1. 操作1");
System.out.println("2. 操作2");
System.out.println("3. 返回上级菜单");
System.out.print("请选择操作:");
String input = scanner.nextLine();
switch (input) {
case "1":
System.out.println("执行操作1");
break;
case "2":
System.out.println("执行操作2");
break;
case "3":
if (!menuStack.empty()) {
String parentMenu = menuStack.pop();
System.out.println("返回" + parentMenu);
return;
} else {
System.out.println("已经是最上级菜单了!");
}
break;
default:
System.out.println("输入有误,请重新选择!");
}
}
}
public static void main(String[] args) {
Menu menu = new Menu();
menu.showMainMenu();
}
}
```
在上面的示例代码中,我们定义了一个Menu类,该类包含了一个栈menuStack和一个Scanner对象scanner,分别用于存储菜单层级和接收用户输入。在showMainMenu方法中,我们显示了主菜单,并在用户选择某个菜单选项时调用对应的子菜单方法。在子菜单方法中,我们首先将当前菜单选项入栈,然后显示子菜单并等待用户选择操作。当用户选择“返回上级菜单”操作时,我们从栈中取出上级菜单选项,并返回上一级菜单。注意,在返回上级菜单之前,需要判断当前是否已经是最上级菜单,避免出现栈溢出异常。
你可以根据自己的需求对示例代码进行修改和扩展,例如增加更多的菜单选项、菜单层级等。
阅读全文