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後面。

發佈了60 篇原創文章 · 獲贊 122 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章