[英]How to get back to main menu after executing a function in switch
这是我的代码。 我只是想问一下,在 switch 语句中执行 function 后,我怎么能 go 回到输入我想要执行的 switch 语句或我的主菜单。 似乎 goto function 在 java 中不起作用。
public class FINAL
{
public static void main(String[] args)
{
Scanner option = new Scanner (System.in);
int ch;
{
System.out.println("~~~~~~~~~~~~~~~~~~~~ WELCOME ~~~~~~~~~~~~~~~~~~~~");
System.out.println("");
System.out.println("[1] - New");
System.out.println("[2] - Open");
System.out.println("[3] - Save");
System.out.println("[4] - Save As");
System.out.println("[5] - Item Record");
System.out.println("[6] - Exit");
System.out.println("Choose what option do you want to perform.......");
ch = option.nextInt();
switch(ch)
{
case 1:
New();
break;
case 2:
System.out.println("");
System.out.println("");
System.out.println("GFdfdf");
break;
}
}
}
我正在这个 function 中创建一个文件,在案例 1 中执行它之后,我想 go 返回我的主菜单以选择要执行的开关中的案例
static void New()
{
Scanner name = new Scanner (System.in);
String filename;
System.out.println("");
System.out.println("");
System.out.println("Enter file name: ");
filename = name.nextLine();
System.out.println("");
System.out.println("");
try
{
File myfile = new File(filename);
if (myfile.createNewFile())
{
System.out.println("File Created " + myfile.getName());
}
else
{
System.out.println("File already exist.");
}
}
catch (IOException e)
{
System.out.println("An Error Occured");
e.printStackTrace();
}
}
}
这不是最好的方法,但一个简单直接的解决方案是简单地围绕您的主 function 中的代码运行一个 while 循环。 为了避免无限循环,我添加了case 3
,它将running
更改为false
- 退出循环。
public static void main(String[] args) {
boolean running = true;
Scanner option = new Scanner(System.in);
System.out.println("~~~~~~~~~~~~~~~~~~~~ WELCOME ~~~~~~~~~~~~~~~~~~~~");
while (running) {
System.out.println("");
System.out.println("[1] - New");
System.out.println("[2] - Open");
System.out.println("[3] - Save");
System.out.println("[4] - Save As");
System.out.println("[5] - Item Record");
System.out.println("[6] - Exit");
System.out.println("Choose what option do you want to perform.......");
int ch;
ch = option.nextInt();
switch (ch) {
case 1:
New();
break;
case 2:
System.out.println("");
System.out.println("");
System.out.println("GFdfdf");
break;
case 3:
running = false;
break;
}
}
}
如果您不想返回主菜单,您可以在开关盒周围使用另一个内部循环来执行相同的操作。
但是,当您添加不同的代码部分时,此解决方案很快就会成为问题。 解决方案是将这段代码分解为函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.