Kotlin-控制流程

📑前言

本文主要是【Kotlin】------Kotlin-控制流程的文章,如果有什么需要改进的地方还请大佬指出⛺️

🎬作者简介:大家好,我是听风与他🥇

☁️博客首页:CSDN主页听风与他

🌄每日一句:狠狠沉淀,顶峰相见

目录

1.If 表达式

kotlin 复制代码
fun main(){
    println("max of 0 and 1 is ${maxOf(0,1)}")
    println("max of 0 and 1 is ${maxOf1(0,1)}")
}
fun maxOf1(a:Int,b:Int) = if(a>b) a else b
fun maxOf(a:Int,b:Int):Int{
    if (a > b){
        return a
    }else{
        return b
    }
}

2.when表达式

kotlin 复制代码
fun main(){
    println(describe(1))
    println(describe("hello"))
    println(describe(2))
    println(describe(3L))
}
fun describe(obj:Any):String=
    when(obj){
        1 -> "one"
        "hello" -> "Greeting"
        is Long -> "Long"
        !is String -> "Not a string"
        else  -> "Unknown"
    }

3.for循环

kotlin 复制代码
fun main(){
    val items = listOf("apple","banana","orange")
    for (item in items){
        println(item)
    }
}

4.while循环

kotlin 复制代码
fun main(){
    val items = listOf("apple","banana","orange")
    var i = 0
    while (i < items.size){
        println("$i is ${items[i]}")
        i++
    }
}

5.返回与 跳转

Kotlin有三种结构化跳转表达式:

  • return 默认从最直接包围它的函数或者匿名函数返回。
  • break 终止最直接包围它的循环。
  • continue 继续下一次最直接包围它的循环

1.break

在 Kotlin 中任何表达式都可以用标签来标记。 标签的格式为标识符后跟 @ 符号,例如:abc@fooBar@。 要为一个表达式加标签,我们只要在其前加标签即可。

  • break跳出loop@所在的循环
kotlin 复制代码
    loop@ for (i in 1..100){
        for (j in 1..100){
            if(j==2){
                println("i:$i")
                break@loop
            }
        }
    }

2.continue

  • continue继续loop@所在语句的下一条语句
kotlin 复制代码
fun main() {
    loop@  for (i in 1..5) {
            if (i > 2) {
                continue@loop
            }
            println("i:$i")
    }
}

📑文章末尾

相关推荐
ptu小鹏1 小时前
类和对象(中)
开发语言·c++
Ya-Jun3 小时前
常用第三方库精讲:cached_network_image图片加载优化
android·flutter
_一条咸鱼_3 小时前
Android嵌套滑动详解
android·面试·android jetpack
Bayi·3 小时前
前端面试场景题
开发语言·前端·javascript
碎梦归途3 小时前
23种设计模式-结构型模式之享元模式(Java版本)
java·开发语言·jvm·设计模式·享元模式
Xiaoyu Wang4 小时前
Go协程的调用与原理
开发语言·后端·golang
bigear_码农4 小时前
python异步协程async调用过程图解
开发语言·python·线程·进程·协程
知识分享小能手5 小时前
JavaScript学习教程,从入门到精通,Ajax与Node.js Web服务器开发全面指南(24)
开发语言·前端·javascript·学习·ajax·node.js·html5
凌叁儿5 小时前
Python 的 datetime 模块使用详解
开发语言·python
谁家有个大人5 小时前
Python数据清洗笔记(上)
开发语言·笔记·python·数据分析