亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Java中break的第三種用法說明

瀏覽:3日期:2022-08-21 09:09:45

在Java中,break語句有三種用法,第一種是用于終止switch語句中的語句序列,第二種是用于退出循環,然而第三種是用作goto語句的“文明”形式!

我們知道,goto語句會破壞程序的結構,所以我們一般不會去使用這種功能。但是在某些情況下,goto語句對于流程控制很有價值并且結構合法。

比如當退出深度嵌套的一系列循環時,goto語句很好用。雖然Java中保留了goto關鍵字,但是沒有goto語句,也沒有任何用到這個關鍵字的地方,所以為了能夠使用類似像goto語句這樣的功能,Java定義了break語句的一種擴展形式。

即通過這種形式的break語句,可以中斷一個或多個代碼塊。而且這些代碼塊不必是某個循環或switch語句的一部分,他們可以是任何代碼塊。

此外這種形式的break語句可以精確指定準備在哪個位置繼續執行,因為這種形式的break語句是使用標簽來進行工作的。

使用標簽的break語句的一般語法形式如下:

break label;

label是一個代碼塊的標簽的名稱。它既可以是一個獨立的代碼塊,也可以作為另一條語句的目標代碼塊。

當執行這種形式的break語句時,程序的執行控制會跳出由標簽命名的代碼塊,具有標簽的代碼塊必須包含break語句,但是不必立即包含break語句。

也就是說,可以使用帶有標簽的break語句跳出一系列嵌套的代碼。但是不能使用break語句將控制轉移出不包含break語句的代碼塊。

為了命名代碼塊,可以在代碼塊之前放一個標簽,標簽可以是任何合法的java標識符,后面跟隨一個冒號。

只要代碼塊被命名,就可以使用命名標簽作為break語句的目標,這樣一來就可以跳出代碼塊,在標識的代碼塊的末端恢復執行。

如下程序代碼:

class Dome { public static void main(String[] args) { a:{ System.out.println('0'); b:{ System.out.println('1'); c:{ System.out.println('2'); if(1==1) break a; } System.out.println('3'); }a System.out.println('4'); } System.out.println('5'); }}

輸出結果如下:

0

1

2

5

所以break語句的這種擴展形式提供了goto語句的優點,而沒有goto語句的問題。

補充知識:Java多重循環以及break和continue使用方法

多重循環

循環體中包含循環語句的結構稱為多重循環。三種循環語句可以自身嵌套,也可以相互嵌套,最常見的就是二重循環。在二重循環中,外層循環每執行一次,內層循環要執行一圈。

如下所示:

Java中break的第三種用法說明

例如:使用 * 打印長方形:

實現代碼為:

Java中break的第三種用法說明

執行流程:當 i = 1 時,外層循環條件成立,進入內層循環,開始打印第一行內容。此時, j 從 1 開始,循環 8 次,內層循環結束后換行,實現第一行 8 個 * 的輸出。

接下來返回外層循環 i 變為 2 ,準備打印下一行,依此類推,直到完成長方形的打印。

for(int i=0;i<5;i++){ for(int j=1;j<=5;j++){//i每增加1,也就是for循環一次,這個循環for要循環完,要循環5次。也就是一圈。 } }

簡單的說,就是外層執行一次的時候,里面(第二個for)已經執行一遍了

break, continue語句

break與continue語句和都是可以控制循環的執行流程的,其中break語句可以直接強行跳出整個循環,默認情況下直接跳到下一條語句進行執行。比如我們要輸出類似下面的三角形星號符。

break可以在if-else中使用直接跳出當前循環。

在多層循環中, 一個break語句只向外跳一層。

continue語句的作用是跳過循環體中剩余的語句并到循環末尾而強行執行下一次循環。

continue語句只用在for、while、do-while等循環體中, 常與if條件語句一起使用, 用來加速循環。

for (int i = 0; i < 3; i++) { System.out.println('開始第' + i + '次for循環'); if (i == 1) { continue;//程序運行后面的代碼就不會執行,但循環不會退出。 } System.out.println('看看continue后這里執行了嗎?');}

如果以上語句用break的話,1后面的循環都不會執行

以上這篇Java中break的第三種用法說明就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 亚洲va欧美va国产 | 美日韩一级 | 欧美成人免费草草影院 | 欧美国产亚洲一区二区三区 | 激情五月色综合亚洲小说 | 成年人在线观看视频网站 | 亚洲一区二区三区在线 | 欧美一级成人一区二区三区 | 国产在热线精品视频国产一二 | 欧美最刺激好看的一级毛片 | 午夜国产 | 女18一级大黄毛片免费女人 | 中国免费观看的视频 | 男人影院在线观看 | 日韩激情淫片免费看 | 亚洲精品网站在线观看不卡无广告 | 一级特黄aaaaaa大片 | 91午夜精品亚洲一区二区三区 | 免费中日高清无专码有限公司 | xxxxxhd69日本护士 | 一级片在线观看视频 | 国产小视频免费看 | 国产福利专区精品视频 | 国产免费网站看v片元遮挡 国产免费自拍 | 国产亚洲女在线线精品 | 欧美三级在线看中文字幕 | 你懂的www| 91久久国产精品 | 成人欧美在线 | 97婷婷色 | 日本一本久道 | 精品久久香蕉国产线看观看亚洲 | 日韩精品免费一区二区 | 欧美h片在线观看 | 日本免费在线一区 | 欧美日韩亚洲m码色帝国 | 日韩在线视频免费看 | 97精品视频在线 | 草草免费视频 | 亚洲国产七七久久桃花 | 免费一级乱子伦片 |