我对此感到困惑。我们大多数人都听说过Java中没有goto语句。

但我发现它是Java中的关键字之一。它可以在哪里使用?如果它不能使用,那么为什么它作为关键字包含在Java中?


当前回答

http://docs.oracle.com/javase/specs/jvms/se7/html/jvms-6.html#jvms-6.5.goto

如果有人告诉你Java中没有goto语句,那你就被骗了。事实上,Java由两层“源代码”组成。

其他回答

不,没有使用goto,但是您可以定义标签并留下一个到标签的循环。您可以使用break或continue后跟标签。所以你可以跳出多个循环层。看看教程。

不,谢天谢地,Java中没有goto。

goto关键字只保留,但不使用(const也是如此)。

goto不在Java中

你必须使用GOTO 但它不能正常工作。在关键的Java词中,它没有被使用。 http://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html

   public static void main(String[] args) {            
            GOTO me;
            //code;
            me:
            //code; 
            }   
   }

是的,这是可能的,但不像在c#(在我看来,c#更好!)那些总是模糊软件的观点是愚蠢的!很遗憾java没有至少goto case xxx。

跳转向前:

 public static void main(String [] args) {
   myblock: {
     System.out.println("Hello");
     if (some_condition)
       break myblock; 
     System.out.println("Nice day");
   }
   // here code continue after performing break myblock
   System.out.println("And work");
 }

向后跳:

 public static void main(String [] args) {
   mystart: //here code continue after performing continue mystart
   do {
     System.out.println("Hello");
     if (some_condition)         
       continue mystart; 
     System.out.println("Nice day");
   } while (false);
   System.out.println("And work");
 }

因此,如果语言设计者觉得有必要的话,它们是可以被使用的。

此外,如果来自具有这些关键字的语言的程序员(例如。C, c++)错误地使用它们,那么Java编译器可以给出有用的错误消息。

或者只是为了阻止程序员使用goto:)