Java 限制开关语句顺序
我正在用java编写一个菜单,使用switch语句和while循环。我希望找到一种方法,确保用户在进入菜单二之前完成菜单一 下面是一段示例代码: (请注意,我通常使用setter和getter传递数据,这只是我为这个问题编写的一个快速程序) 导入java.util.Scanner 公共班机{Java 限制开关语句顺序,java,Java,我正在用java编写一个菜单,使用switch语句和while循环。我希望找到一种方法,确保用户在进入菜单二之前完成菜单一 下面是一段示例代码: (请注意,我通常使用setter和getter传递数据,这只是我为这个问题编写的一个快速程序) 导入java.util.Scanner 公共班机{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); int option = 0;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int option = 0;
String Fname = null;
String Sname = null;
int Age = 0;
while(option !=5){
System.out.println("1. Enter Firstname");
System.out.println("2. Enter Surname");
System.out.println("3. Enter Age");
System.out.println("4. Display Details");
System.out.println("5. System Exit");
option = sc.nextInt();
switch(option){
case 1:
System.out.println("Please enter your Firstname >");
Fname = sc.next();
break;
case 2:
System.out.println("Please enter your Surname >");
Sname = sc.next();
break;
case 3:
System.out.println("Please enter your Age >");
Age = sc.nextInt();
break;
case 4:
System.out.println("Firstname = " + Fname + "\nSurname = " + Sname + "\nAge = " + Age);
break;
case 5:
System.out.println("You have chosen to System Exit!!!");
System.exit(0);
break;
default:
System.out.println("Invalid Entry!! \nPlease try again");
}
}
}
}
我试图阻止在他们的名字之前输入他们的姓氏
有人能帮忙吗
谢谢首先只显示名字。然后,当用户输入first name时,从该方法调用姓氏方法。使用方法调用而不是开关大小写。首先仅显示名字。然后,当用户输入名字时,从该方法调用姓氏方法。使用方法调用而不是开关大小写。我试图阻止用户在名字之前输入姓氏。为什么?您的代码看起来应该可以正常工作。不使用switch怎么样?这似乎是最简单的解决方案,可能是所有输入选项的case语句中的If块。如果数据已经输入,If语句将跳过。这只是一个简单的程序,类似于我的分级单元项目。我必须使用Switch语句来允许我的项目工作。我的项目是一个酒店预订系统,前两个菜单选项是注册和登录。用户必须在登录前注册。我试图阻止用户在名字之前输入姓氏。为什么?您的代码看起来应该可以正常工作。不使用switch怎么样?这似乎是最简单的解决方案,可能是所有输入选项的case语句中的If块。如果数据已经输入,If语句将跳过。这只是一个简单的程序,类似于我的分级单元项目。我必须使用Switch语句来允许我的项目工作。我的项目是一个酒店预订系统,前两个菜单选项是注册和登录。用户在登录之前必须注册。不要使用开关。按所需顺序使用从一个方法到另一个方法的方法调用。这样,用户只有在输入名字后才能输入姓氏。请参见上面的评论。我不理解开关的用法。如果你能详细解释一下,我也许能帮你。很抱歉,我花了一些时间回复你。我和其他项目度过了一个忙碌的周末。我不能分享我的分级单元项目,因为它是一项考试,而且是保密的。但我可以尽可能详细地解释它。不要使用开关。按所需顺序使用从一个方法到另一个方法的方法调用。这样,用户只有在输入名字后才能输入姓氏。请参见上面的评论。我不理解开关的用法。如果你能详细解释一下,我也许能帮你。很抱歉,我花了一些时间回复你。我和其他项目度过了一个忙碌的周末。我不能分享我的分级单元项目,因为它是一项考试,而且是保密的。但我可以尽可能详细地解释它。
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int option = 0;
String Fname = null;
String Sname = null;
int Age = 0;
while(option !=5){
System.out.println("1. Enter Firstname");
System.out.println("2. Enter Surname");
System.out.println("3. Enter Age");
System.out.println("4. Display Details");
System.out.println("5. System Exit");
option = sc.nextInt();
switch(option){
case 1:
System.out.println("Please enter your Firstname >");
Fname = sc.next();
break;
case 2:
System.out.println("Please enter your Surname >");
Sname = sc.next();
break;
case 3:
System.out.println("Please enter your Age >");
Age = sc.nextInt();
break;
case 4:
System.out.println("Firstname = " + Fname + "\nSurname = " + Sname + "\nAge = " + Age);
break;
case 5:
System.out.println("You have chosen to System Exit!!!");
System.exit(0);
break;
default:
System.out.println("Invalid Entry!! \nPlease try again");
}
}
}