java中的字符retry: 是什么?

  在看源码时,出现了retry: ,这个是什么意思?之前没有接触过,那先来一个简单的例子。

  public void testRetry() {
        int i = 0;
        retry:  //①
        while (true) {
            i++;
            System.out.println("i=" + i);
            int j = 0;
//            retry:   //②
            for (; ; ) {
                j++;
                System.out.println("j=" + j);
                if (j == 2) {
                    break retry;
                }
            }
        }
    }

首先需要说明的是,retry:可以理解为java中的一种特殊的标记,其中retry可以换成任何合法的命名。

a:,b: A13: .....都是可以的


1.打开①,关闭②  打印结果

i=1
j=1

j=2

2.打开②,关闭①,打印结果

....

j=1
j=2
i=132348
j=1
j=2
i=132349
j=1
j=2
i=132350
j=1

j=2

...一直循环打印

retry相当于一个标记,只用在循环里面,很像goto语句,break到retry字符处。如果retry没有在循环(for,while)里面,在执行到retry时,就会跳出整个循环。如果retry在循环里面,可以理解为跳到了关键字处执行,不管几层循环。continue理解也是一样。

注意

retry:需要放在for,whlie,do...while的前面声明,变量只跟在break和continue后面。

猜你喜欢

转载自blog.csdn.net/u011381576/article/details/79975852