日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Kotlin学习(7):返回和跳转

發(fā)布時間:2023/12/15 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Kotlin学习(7):返回和跳转 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
  • 開發(fā)環(huán)境:IntelliJ IEDA
  • 個人博客:http://blog.csdn.net/IInmy
  • 項目源碼:https://github.com/Rushro2m/KotlinForOfficial
  • 官方文檔中文版:https://www.kotlincn.net/docs/reference/returns.html

Kotlin有三種結構化跳轉表達式:

  • return:默認從最直接包圍它的函數(shù)或者匿名函數(shù)返回。
  • break:終止最直接包圍它的循環(huán)。
  • continue:繼續(xù)下一次最直接包圍它的循環(huán)。

所有的這些表達式都可以用作更大表達式的一部分:

val s = Person("張三").name ?: return

1、Break與Continue標簽

在Kotlin中任何表達式都可以用標簽(label)來標記。標簽的格式為標識符后跟@符號,例如:abc@、fooBar@都是有效的標簽。要為一個表達式加標簽,我們只要在其前加標簽即可。

loop@ for (i in 1..100) {//...}

標簽限制的break跳轉到剛好位于該標簽指定的循環(huán)后面的執(zhí)行點。continue繼續(xù)標簽指定的循環(huán)下一次迭代。

2、標簽處返回

Kotlin有函數(shù)字面量、局部函數(shù)和對象表達式。因此Kotlin的函數(shù)可以被嵌套。標簽限制的return允許我們從外層函數(shù)返回。最終的一個用途就是i從Lambda表達式中返回。

fun foo() {val ints = listOf(0, 1, 2, 3, 4, 5, 6)ints.forEach {if (it == 3)//從Lambda函數(shù)中返回,結束這個循環(huán)函數(shù)returnprint(it)} }

這個return表達式從最直接包圍它的函數(shù)即foo中返回。如果我們需要從Lambda表達式中返回,我們必須給它加標簽并用以限制return。

fun fzz() {val ints = listOf(0, 1, 2, 3, 4, 5, 6)ints.forEach lit@ {if (it == 0) return@litprint(it)} }

通常情況下使用隱式標簽更方便。改標簽與該Lambda的函數(shù)同名。

fun fxx() {val ints = listOf(0, 1, 2, 3, 4, 5, 6)ints.forEach {if (it == 0) return@forEachprint(it)} }

3、Continue

continue指的是繼續(xù)標簽指定的循環(huán)的下一次迭代,也就是結束本次循環(huán),開始下一次循環(huán)。

for (i in 1..10){if (i==6)continueprint(i)}

總結

以上是生活随笔為你收集整理的Kotlin学习(7):返回和跳转的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。