在java中使用break

时间:2018-08-29 14:56:30

标签: java loops label break

对于嵌套循环,当我使用带有标签的continue时,它在编译期间给我一个错误,说the declared loop is not present

特别是在这种情况下,显示的错误消息是:Second is not a loop label

这是我编写的用于演示我的问题的代码:

//using break as a form of GOTO 
class demo
{

    public static void main(String [] args)
    {   
        boolean b=false;
        First:{
            Second:{
                Third:{
                        System.out.println("Before BReak");
                        if(b)                               
                        continue Third;                 
                        else
                        break Second;
                    }
                    System.out.println("THis won't execute");
                }
                System.out.println("THis too won't Execute");
            }
    }   

}

3 个答案:

答案 0 :(得分:3)

由于您不在某种循环中,因此无法使用continue

来自docs

  

continue语句跳过for的当前迭代,而,   或do-while循环

答案 1 :(得分:0)

这会导致Java中的编译错误,因为没有循环。仅当存在循环时,继续才有意义

答案 2 :(得分:0)

您可以仅在break而不是continue上使用不带循环的Label语句

  • 要使用继续,您将需要循环

  • 不带loop和break语句的label语句示例:

    sumBlock: {

         if (a < 0) {
                break sumBlock;
            }
    
            if (b < 0) {
                break sumBlock;
            }
            return a + b;
        }