Java 有没有一种方法,我可以循环这个程序,在它执行循环的一部分后重新开始
好的,我是Java新手,我遇到了一个问题。我试图让程序在switch语句的某一部分执行完毕后从main重新启动。这是我的代码:Java 有没有一种方法,我可以循环这个程序,在它执行循环的一部分后重新开始,java,Java,好的,我是Java新手,我遇到了一个问题。我试图让程序在switch语句的某一部分执行完毕后从main重新启动。这是我的代码: import java.util.Scanner; public class Test{ public static void main(String[] args){ Scanner input = new Scanner(System.in); int ans; System.out.println("Choose an option");
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
int ans;
System.out.println("Choose an option");
System.out.print("1: To see members\n2: To add member\n3: To delete a member\n Option: ");
ans = input.nextInt();
switch(ans){
case 1:
//code to see members
break;
case 2:
//code to add members
break;
case 3:
//code to delete members
break;
default:
System.out.println("Invalid option");
}
}
}
案例一执行完毕后,程序退出。如何将控件传递回main,以便它可以重新启动,直到用户有意退出?将代码从main提取到一个新函数中,然后调用该函数传递控件并重新启动。引入一个变量:
boolean exitLoop = false;
while (!exitLoop) {
// insert code here
}
boolean run = true;
将代码放入循环中:
while(run){
//your code
}
如果用户选择退出,只需将run设置为false,程序就会退出。试试这个
import java.util.Scanner;
public class Test{
public static void main(String[] args){
boolean run = true;
while(run){
Scanner input = new Scanner(System.in);
int ans;
System.out.println("Choose an option");
System.out.print("1: To see members\n2: To add member\n3: To delete a member\n4: To end the program\n Option: ");
ans = input.nextInt();
switch(ans){
case 1:
//code to see members
break;
case 2:
//code to add members
break;
case 3:
//code to delete members
break;
case 4:
//it will end the program
run=false;
break;
default:
System.out.println("Invalid option");
}
}
}
}
您可以递归调用main(不推荐),或者更好,按照@ipavlic给出的答案,并按照@Dahaka等其他人的说法将其放入循环中。请不要使用MadProgrammer给出的重复答案对不起,但当我开始写作时,只有第一个答案。