<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 返回和跳轉 [TOC] Kotlin 有三種結構化跳轉表達式: * return:默認從最直接包圍它的函數或者[匿名函數](http://www.kotlincn.net/docs/reference/lambdas.html#匿名函數)返回。 * break:終止最直接包圍它的循環。 * continue:繼續下一次最直接包圍它的循環 所有這些表達式都可以用作更大表達式的一部分: ``` val s = person.name ?: return ``` ### Break 與 Continue break 和 continue 都是用來控制循環結構的,主要是用來停止循環(中斷跳轉)。 #### **1.break** 我們在寫代碼的時候,經常會遇到在某種條件出現的時候,就直接提前終止循環。而不是等到循環條件為 false 時才終止。這個時候,我們就可以使用 break 結束循環。 break 用于完全結束一個循環,直接跳出循環體,然后執行循環后面的語句。 #### **2.continue** continue 是只終止本輪循環,但是還會繼續下一輪循環。可以簡單理解為,直接在當前語句處中斷,跳轉到循環入口,執行下一輪循環。而 break 則是完全終止循環,跳轉到循環出口。 示例:打印數字1~10,只要遇到偶數,就結束打印。 ~~~ fun main(args: Array<String>) { println("............break的結果...........") breakTest() println("............continue的結果...........") continueTest() } fun breakTest(){ for (i in 1..10){ println(i) if ( i %2 == 0){ break } }// break to here } fun continueTest(){ for ( i in 1..10){ if ( i %2 ==0){ continue } println(i) } } ~~~ 運行結果 ``` ............break的結果........... 1 2 ............continue的結果........... 1 3 5 7 9 Process finished with exit code 0 ``` ### Break 與 Continue 標簽 和Java不同的是,在 Kotlin 中任何表達式都可以用標簽(label)來標記。 標簽的格式為標識符后跟`@`符號,例如:`abc@`、`fooBar@`都是有效的標簽(參見[語法](http://www.kotlincn.net/docs/reference/grammar.html#label))。 **要為一個表達式加標簽,我們只要在其前加標簽即可**。 ``` loop@ for (i in 1..100) { // …… } ``` 現在,我們可以用標簽限制break或者continue: ``` loop@ for (i in 1..100) { for (j in 1..100) { if (……) break@loop } } ``` 標簽限制的 break 跳轉到剛好位于該標簽指定的循環后面的執行點。continue繼續標簽指定的循環的下一次迭代。 ~~~ loop@ for (i in 1..100) { for (j in 1..100) { if (……) break@loop // 終止loop標記的循環 if (……) continue@loop // 跳出loop標記的循環,繼續下一次loop標記的循環 } } ~~~ #### **示例代碼** ~~~ fun main(args: Array<String>) { //通常當我們在循環體中使用break,是跳出最近外層的循環 println(".......無標簽,直接跳出最近外層的循環........") for (i in 1..5) { for (j in 1..10) { if (j % 2 == 0) { break } println("i = $i, j = $j") } } //當我們想直接跳轉到外層for循環,這個時候我們就可以使用標簽了 //定義標簽,直接跳轉到外層for循環 println(".......直接跳轉到外層for循環........") outer@ for (i in 1..5) { for (j in 1..10) { if (j % 2 == 0) { //break到指定標簽 break@outer } println("i = $i, j = $j") } } //為了代碼可讀性,我們可以用標簽來顯式地指出循環體的跳轉地址 //定義標簽,指明內層循環的跳轉地址 println(".......顯示地,直接跳轉到內層for循環........") for (i in 1..5) { iner@for (j in 1..10) { if (j % 2 == 0) { //break到指定標簽 break@iner } println("i = $i, j = $j") } } } ~~~ 運行結果 ``` .......無標簽,直接跳出最近外層的循環........ i = 1, j = 1 i = 2, j = 1 i = 3, j = 1 i = 4, j = 1 i = 5, j = 1 .......直接跳轉到外層for循環........ i = 1, j = 1 .......顯示地,直接跳轉到內層for循環........ i = 1, j = 1 i = 2, j = 1 i = 3, j = 1 i = 4, j = 1 i = 5, j = 1 Process finished with exit code 0 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看