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")
    }
}

📑文章末尾

相关推荐
Y4090015 分钟前
C语言转Java语言,相同与相异之处
java·c语言·开发语言·笔记
Cao_Shixin攻城狮3 小时前
Flutter运行Android项目时显示java版本不兼容(Unsupported class file major version 65)的处理
android·java·flutter
古月-一个C++方向的小白5 小时前
C++11之lambda表达式与包装器
开发语言·c++
沐知全栈开发6 小时前
Eclipse 生成 jar 包
开发语言
呼啦啦呼啦啦啦啦啦啦6 小时前
利用pdfjs实现的pdf预览简单demo(包含翻页功能)
android·javascript·pdf
杭州杭州杭州7 小时前
Python笔记
开发语言·笔记·python
tanyongxi667 小时前
C++ AVL树实现详解:平衡二叉搜索树的原理与代码实现
开发语言·c++
idjl8 小时前
Mysql测试题
android·adb
阿葱(聪)8 小时前
java 在k8s中的部署流程
java·开发语言·docker·kubernetes
浮生带你学Java9 小时前
2025Java面试题及答案整理( 2025年 7 月最新版,持续更新)
java·开发语言·数据库·面试·职场和发展