java 標籤跳轉用法解析

前言

在看jdk源碼ThreadPoolExecutor中的addWorker方法的時候(ThreadPoolExecutor詳解及線程池優化),發現如下代碼:
在這裏插入圖片描述
首先這個retry不是java裏面的關鍵字,所以那個retry可以用任何合法的變量名替換,例如hello:等等,下面我們再來看一下這個到底有什麼用。

用用看

首先,下面代碼會打印出1~10
在這裏插入圖片描述
增加條件後的結果:
在這裏插入圖片描述
如果使用retry:
在這裏插入圖片描述
結論:break retry不管有幾層循環,都會退出。

再試試continue retry:
在這裏插入圖片描述
結論:continue retry會continue最外層的循環,準確的說是定義retry後面代碼片段的最外層循環。

結論

不管自己定義叫retry也好,mark也好,就是一個標記位置,標記着下一次continue或者break的跳轉位置。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章