Java 在switch中执行函数后如何返回主菜单
这是我的密码。我只是想问,在执行switch语句中的一个函数后,如何返回到输入我要执行的switch语句或我的主菜单。似乎goto函数在java中不起作用Java 在switch中执行函数后如何返回主菜单,java,switch-statement,Java,Switch Statement,这是我的密码。我只是想问,在执行switch语句中的一个函数后,如何返回到输入我要执行的switch语句或我的主菜单。似乎goto函数在java中不起作用 public class FINAL { public static void main(String[] args) { Scanner option = new Scanner (System.in); int ch; { System.out.pr
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;
}
}
}
我正在这个函数中创建一个文件,在案例1中执行它之后,我想回到我的主菜单,选择开关中要执行的案例
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();
}
}
}
这不是最好的方法,但是一个简单的解决方案是围绕主函数中的代码运行一个while循环。为了避免无限循环,我添加了
case 3
,它将running
更改为false
——退出循环
publicstaticvoidmain(字符串[]args){
布尔运行=真;
扫描仪选项=新扫描仪(System.in);
System.out.println(“~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~”;
(跑步时){
System.out.println(“”);
System.out.println(“[1]-新”);
System.out.println(“[2]-打开”);
System.out.println(“[3]-保存”);
System.out.println(“[4]-另存为”);
System.out.println(“[5]-项目记录”);
System.out.println(“[6]-退出”);
System.out.println(“选择要执行的选项……”);
int-ch;
ch=option.nextInt();
开关(ch){
案例1:
新的();
打破
案例2:
System.out.println(“”);
System.out.println(“”);
系统输出打印项次(“GFdfdf”);
打破
案例3:
运行=错误;
打破
}
}
}
如果您不想返回主菜单,您可以对开关盒周围的另一个内循环执行相同的操作
但是,当您添加不同的代码段时,此解决方案可能很快成为一个问题。解决方法是将此代码分解为函数。非常感谢。这真的很有帮助:不客气。如果您觉得足够,您可以选择它作为答案:)提示:您可以移动此行
Scanner option=new Scanner(System.in)代码>在while循环之外,我们只需要创建一次。如果我有一个嵌套的开关呢?现在我如何回到主菜单?然后你需要使用break
退出嵌套开关和外部开关,或者需要使用布尔标志返回打印主菜单的while
循环。否则,您可以将主菜单放在不同的方法中,并在需要打印菜单时调用该方法。