android kotlin基础复习—for while do...while

1、新建一个文件kt:

2、循环的几种用法:

for

while

do ... while

for:

复制代码
println("----for 使用-----")
    val items = listOf("apple", "banana", "kiwi")
    for (item in items) {
        println(item)
    }

    for (index in items.indices) {
        println("item at $index is ${items[index]}")
    }

while:

复制代码
 println("----while 使用-----")
    var x = 5
    while (x > 0) {
        println( x--)
    }

do...while:

复制代码
println("----do...while 使用-----")
    var y = 5
    do {
        println(y--)
    } while(y>0)

3、测试代码:

复制代码
fun main(args: Array<String>) {
    println("----for 使用-----")
    val items = listOf("apple", "banana", "kiwi")
    for (item in items) {
        println(item)
    }

    for (index in items.indices) {
        println("item at $index is ${items[index]}")
    }

    println("----while 使用-----")
    var x = 5
    while (x > 0) {
        println( x--)
    }
    println("----do...while 使用-----")
    var y = 5
    do {
        println(y--)
    } while(y>0)

    println("----continue...break 使用-----")
    for (i in 1..10) {
        if (i==3) continue  // i 为 3 时跳过当前循环,继续下一次循环
        println(i)
        if (i>5) break   // i 为 6 时 跳出循环
    }

    println("---- 使用-----")
    foo()
    println("---- 使用-----")
    foo1()
    println("---- 使用-----")
    foo2()
    println("----for 使用-----")
    forLoop()
    println("----String length 使用-----")
    print(getStringLength("hello"))
}

fun foo() {
    val ints = intArrayOf(0,1,2)
    ints.forEach lit@ {
        if (it == 0) return@lit
        println(it)
    }
}

fun foo1() {
    val ints = intArrayOf(0,1,2)
    ints.forEach {
        if (it == 0) return@forEach
        println(it)
    }
}

fun foo2() {
    val ints = intArrayOf(0,1,2)
    ints.forEach(fun(value: Int) {
        if (value == 0) return
        println(value)
    })
}

fun forLoop(){
    print("循环输出:")
    for (i in 1..4) print(i) // 输出"1234"
    println("\n----------------")
    print("设置步长:")
    for (i in 1..4 step 2) print("$i ") // 输出"13"
    println("\n----------------")
    print("使用 downTo:")
    for (i in 4 downTo 1 step 2) print("$i ") // 输出"42"
    println("\n----------------")
    print("使用 until:")
    // 使用 until 函数排除结束元素
    for (i in 1 until 4) {   // i in [1, 4) 排除了 4
        print(i)
    }
    println("\n----------------")
}

fun getStringLength(obj: Any): Int? {
    if (obj is String) {
        // 做过类型判断以后,obj会被系统自动转换为String类型
        return obj.length
    }else{
        return 0
    }
}

4、测试结果:

相关推荐
xiangzhihong82 小时前
使用Universal Links与Android App Links实现网页无缝跳转至应用
android·ios
车载应用猿3 小时前
基于Android14的CarService 启动流程分析
android
没有了遇见3 小时前
Android 渐变色实现总结
android
雨白6 小时前
Jetpack系列(四):精通WorkManager,让后台任务不再失控
android·android jetpack
mmoyula8 小时前
【RK3568 驱动开发:实现一个最基础的网络设备】
android·linux·驱动开发
sam.li9 小时前
WebView安全实现(一)
android·安全·webview
移动开发者1号9 小时前
Kotlin协程超时控制:深入理解withTimeout与withTimeoutOrNull
android·kotlin
程序员JerrySUN10 小时前
RK3588 Android SDK 实战全解析 —— 架构、原理与开发关键点
android·架构
移动开发者1号10 小时前
Java Phaser:分阶段任务控制的终极武器
android·kotlin
哲科软件19 小时前
跨平台开发的抉择:Flutter vs 原生安卓(Kotlin)的优劣对比与选型建议
android·flutter·kotlin