java标签和标签(除了循环内部)

时间:2016-03-31 18:52:33

标签: java tags labels

java中是否有任何方法可以在代码中前进和后退? 我想创建一些代码,用户可以在各种选项之间做出决定,我可以使用标签还是必须使用开关?

我想编写类似这样的代码:

public static void main(String[]args){

START:
   System.out.println("What do you whish to do?");
   System.out.println("X");
   System.out.println("Y");
   System.out.println("Z");

      if(kbd.nextLine().equals("X")){goto x;}
      if(kbd.nextLine().equals("Y")){goto y;}
      if(kbd.nextLine().equals("Z")){goto z;}

X: //CODE FOR ACTION X// 
goto START;
Y: //CODE FOR ACTION Y// 
goto START;
Z: //CODE FOR ACTION Z// 
goto START;
}

是否有任何方法可以在不使用开关的情况下在java上执行此操作?

1 个答案:

答案 0 :(得分:0)

无论如何,您的代码无效。如果用户输入" Y",则第一个if不执行GOTO,程序将等待下一行的输入。

它应该是这样的(你可以使用if或#s;或切换):

String exitCode = "q";
String ans = "";
while(!ans.equals(exitCode) {
   System.out.println("What do you wish to do?");
   System.out.println("X");
   System.out.println("Y");
   System.out.println("Z");
   String ans = kbd.nextLine();
   if ( ans.equals("X") {
     // code for X action
   } else if ( ans.equals("Y" ) {
      // code for Y action
   } else if ( ... ) {
     // etc
   }
}