Java 重新启动switch case语句
希望我能在这里找到帮助,事实上im设计程序,让用户输入字符串值包含0或1,然后菜单出现,以帮助用户选择从4选项把我的问题我不能返回菜单显示后,第一次使用,因为程序无法运行任何选择后,第一次选择。。。 再次感谢你Java 重新启动switch case语句,java,menu,switch-statement,Java,Menu,Switch Statement,希望我能在这里找到帮助,事实上im设计程序,让用户输入字符串值包含0或1,然后菜单出现,以帮助用户选择从4选项把我的问题我不能返回菜单显示后,第一次使用,因为程序无法运行任何选择后,第一次选择。。。 再次感谢你 Scanner input = new Scanner(System.in); System.out.print("Enter 0s or 1s Numbers "); String binaryString = input.nextLine();// user m
Scanner input = new Scanner(System.in);
System.out.print("Enter 0s or 1s Numbers ");
String binaryString = input.nextLine();// user must enter string value contains 0 or 1
convert.displayMenu();// call the display menu which contains 4 choices
Scanner input2 = new Scanner(System.in);// the user select the 1 option from 4
int select = input2.nextInt(); // to save what user enter it
// here is the switch statement im use it
switch (select) {
case 1:
input2.equals(1);
convert.getBinary(binaryString);
convert.displayMenu();
break;
case 2:
input2.equals(2);
convert.convertBtD(binaryString);
convert.displayMenu();
break;
case 3:
input2.equals(2);
convert.convertBtO(binaryString);
convert.displayMenu();
break ;
case 4:
break;
}
while(select != 4);
}
您应该单独调用此方法,如下所示:
public void menu(){
Scanner input = new Scanner(System.in);
System.out.print("Enter 0s or 1s Numbers ");
String binaryString = input.nextLine();// user must enter string value contains 0 or 1
convert.displayMenu();// call the display menu which contains 4 choices
Scanner input2 = new Scanner(System.in);// the user select the 1 option from 4
int select = input2.nextInt(); // to save what user enter it
// here is the switch statement im use it switch (select) {
case 1:
input2.equals(1);
convert.getBinary(binaryString);
convert.displayMenu();
break;
case 2:
input2.equals(2);
convert.convertBtD(binaryString);
convert.displayMenu();
break;
case 3:
input2.equals(2);
convert.convertBtO(binaryString);
convert.displayMenu();
break ;
case 4:
break;
case 5:
System.out.println("Exit Point");
System.exit(0);
}
menu();
}
我只是将这段代码添加到一个方法中,并在该方法的末尾添加一个call menu()。为了退出应用程序,我还创建了案例5。这是您的逻辑,如何正确操作,但您得到了实现此目标的主要大纲:)您应该单独调用此方法,如:
public void menu(){
Scanner input = new Scanner(System.in);
System.out.print("Enter 0s or 1s Numbers ");
String binaryString = input.nextLine();// user must enter string value contains 0 or 1
convert.displayMenu();// call the display menu which contains 4 choices
Scanner input2 = new Scanner(System.in);// the user select the 1 option from 4
int select = input2.nextInt(); // to save what user enter it
// here is the switch statement im use it switch (select) {
case 1:
input2.equals(1);
convert.getBinary(binaryString);
convert.displayMenu();
break;
case 2:
input2.equals(2);
convert.convertBtD(binaryString);
convert.displayMenu();
break;
case 3:
input2.equals(2);
convert.convertBtO(binaryString);
convert.displayMenu();
break ;
case 4:
break;
case 5:
System.out.println("Exit Point");
System.exit(0);
}
menu();
}
我只是将这段代码添加到一个方法中,并在该方法的末尾添加一个call menu()。为了退出应用程序,我还创建了案例5。这是您的逻辑,如何正确操作,但您得到了实现这一点的主要提纲:)此循环重新启动switch/case语句:
inputloop: while(true) {
int select = input2.nextInt();
switch (select) {
case 1:
input2.equals(1);
convert.getBinary(binaryString);
break;
case 2:
input2.equals(2);
convert.convertBtD(binaryString);
break;
case 3:
input2.equals(2);
convert.convertBtO(binaryString);
break ;
case 4:
break inputloop;
}
convert.displayMenu();
}
可以通过循环条件为
select!=4
但是这个更简洁(从我的角度来看)这个循环重新启动switch/case语句:
inputloop: while(true) {
int select = input2.nextInt();
switch (select) {
case 1:
input2.equals(1);
convert.getBinary(binaryString);
break;
case 2:
input2.equals(2);
convert.convertBtD(binaryString);
break;
case 3:
input2.equals(2);
convert.convertBtO(binaryString);
break ;
case 4:
break inputloop;
}
convert.displayMenu();
}
可以通过循环条件为
select!=4
但是这个更简洁(从我的角度来看)一个简单的解决方案可以实现如下:
while(1){
Scanner input2 = new Scanner(System.in);// the user select the 1 option from 4
int select = input2.nextInt(); // to save what user enter it
switch(select)
{
case 1:
input2.equals(1);
convert.getBinary(binaryString);
convert.displayMenu();
break;
case 2:
input2.equals(2);
convert.convertBtD(binaryString);
convert.displayMenu();
break;
case 3:
input2.equals(2);
convert.convertBtO(binaryString);
convert.displayMenu();
break ;
case 4:
break;
}
if(select == 4)
break;
}一个简单的解决方案可以实现如下:
while(1){
Scanner input2 = new Scanner(System.in);// the user select the 1 option from 4
int select = input2.nextInt(); // to save what user enter it
switch(select)
{
case 1:
input2.equals(1);
convert.getBinary(binaryString);
convert.displayMenu();
break;
case 2:
input2.equals(2);
convert.convertBtD(binaryString);
convert.displayMenu();
break;
case 3:
input2.equals(2);
convert.convertBtO(binaryString);
convert.displayMenu();
break ;
case 4:
break;
}
if(select == 4)
break;
}似乎您的switch语句需要在while循环中检查扫描仪是否有输入,可能是
while(input2.nextInt()){…}
谢谢您paul在运行case dosent work时在第一次选择后放入循环它似乎您的switch语句需要在while循环中检查扫描仪是否有输入,也许while(input2.nextInt()){…}
谢谢paul在运行案例时放置循环在第一次选择后工作Corona谢谢你使用它的循环完美且工作良好Corona谢谢你使用它的循环完美且工作良好谢谢你Sarz我会尝试的谢谢你Sarz我也会尝试的