Kotlin:for循环的几种示例

一、 打印 0 到 2

1.1 方式一:0 until 3
bash 复制代码
/**
 * 打印 0 到 2
 */
fun print0To2M1(){
    for (inex in 0 until 3){// 不包含3
        print("$inex ")
    }
}

运行结果

1.2 方式二:inex in 0 ...2
bash 复制代码
/**
 * 打印 0 到 2
 */
fun print0To2M2(){
    for (inex in 0 ..2){// 包含2
        print("$inex ")
    }
}

运行结果

二、打印 2 到 0

使用downTo

bash 复制代码
/**
 * 打印 2 到 0 (0 到 2 的 倒序遍历)
 */
fun print2To0() {
    for (inex in 2 downTo 0) {// 包含2
        print("$inex ")
    }
}

运行结果

三、打印 1、3、5、7...

使用step()函数

bash 复制代码
/**
 * 打印 1、3、5、7...
 */
fun print1357(){
    for (index in 1 .. 20 step 2){// step 2代表遍历的步长
        print("$index ")
    }
}

运行结果

四、打印 list 所有元素

4.1 方式一:list.indices
bash 复制代码
fun printList1(){
    println("printList1 方式打印信息如下:")

    val list = listOf("koltin","android","java","python","ios","H5","C++")
    for (index in list.indices){
        println("index = $index --> item:${list[index]}")
    }
}

运行结果

4.2 方式二:item in list
bash 复制代码
/**
 * 打印 list 所有元素
 */
fun printList2() {
    println("printList2 方式打印信息如下:")

    val list = listOf("koltin", "android", "java")
    for (item in list) {// 适合不需要下标的场景,例如直接显示集合数据,而且展示样式都一样
        print("$item ")
    }
}

运行结果

4.3 方式三:list.withIndex()
bash 复制代码
/**
 * 打印 list 所有元素
 */
fun printList3() {
    println("printList3 方式打印信息如下:")
    val list = listOf("koltin", "android", "java")
    for ((index, item) in list.withIndex()) {
        println("index = $index --> item is $item")
    }
}

运行结果

4.4 方式:index in 0 until list.size
bash 复制代码
/**
 * 打印 list 所有元素
 */
fun printList5() {
    println("printList5 方式打印信息如下:")
    val list = listOf("koltin", "android", "java")
    for (index in 0 until list.size) {
        println("index = $index --> item is ${list[index]}")
    }
}

运行结果

4.5 方式:index in 0 ... list.size - 1
bash 复制代码
/**
 * 打印 list 所有元素
 */
fun printList6() {
    println("printList6 方式打印信息如下:")
    val list = listOf("koltin", "android", "java")
    for (index in 0 .. list.size - 1) {
        println("index = $index --> item is ${list[index]}")
    }
}

运行结果

五、倒序打印 list 所有元素

bash 复制代码
/**
 * 倒序 打印 list 所有元素
 */
fun printList4() {
    println("printList4 方式打印信息如下:")
    val list = listOf("koltin", "android", "java")
    for (index in list.size - 1 downTo 0) {
        println("index = $index --> item is ${list[index]}")
    }
}

运行结果

六、TestFor.kt文件代码

bash 复制代码
package com.test.learnkotlin.test

/**
 *Author: chinadragon
 */

fun main() {
//    print0To2M1()
//    print0To2M2()
//    printList1()
//    printList2()
//    printList3()
//    print2To0()
//    print1357()
//    printList4()
//    printList5()
    printList6()
}

/**
 * 打印 0 到 2
 */
fun print0To2M1() {
    for (inex in 0 until 3) {// 不包含3
        print("$inex ")
    }
}

/**
 * 打印 0 到 2
 */
fun print0To2M2() {
    for (inex in 0..2) {// 包含2
        print("$inex ")
    }
}

/**
 * 打印 2 到 0 (0 到 2 的 倒序遍历)
 */
fun print2To0() {
    for (inex in 2 downTo 0) {// 包含2
        print("$inex ")
    }
}

/**
 * 打印 1、3、5、7...
 */
fun print1357(){
    for (index in 1 .. 20 step 2){// step 2代表遍历的步长
        print("$index ")
    }
}

/**
 * 打印 list 所有元素
 */
fun printList1() {
    println("printList1 方式打印信息如下:")

    val list = listOf("koltin", "android", "java")
    for (index in list.indices) {
        println("index = $index --> item:${list[index]}")
    }
}

/**
 * 打印 list 所有元素
 */
fun printList2() {
    println("printList2 方式打印信息如下:")

    val list = listOf("koltin", "android", "java")
    for (item in list) {// 适合不需要下标的场景,例如直接显示集合数据,而且展示样式都一样
        print("$item ")
    }
}

/**
 * 打印 list 所有元素
 */
fun printList3() {
    println("printList3 方式打印信息如下:")
    val list = listOf("koltin", "android", "java")
    for ((index, item) in list.withIndex()) {
        println("index = $index --> item is $item")
    }
}

/**
 * 倒序 打印 list 所有元素
 */
fun printList4() {
    println("printList4 方式打印信息如下:")
    val list = listOf("koltin", "android", "java")
    for (index in list.size - 1 downTo 0) {
        println("index = $index --> item is ${list[index]}")
    }
}

/**
 * 打印 list 所有元素
 */
fun printList5() {
    println("printList5 方式打印信息如下:")
    val list = listOf("koltin", "android", "java")
    for (index in 0 until list.size) {
        println("index = $index --> item is ${list[index]}")
    }
}

/**
 * 打印 list 所有元素
 */
fun printList6() {
    println("printList6 方式打印信息如下:")
    val list = listOf("koltin", "android", "java")
    for (index in 0 .. list.size - 1) {
        println("index = $index --> item is ${list[index]}")
    }
}
相关推荐
YB13753 小时前
jetpack compose 副作用 SideEffect
android·kotlin
CHB5 小时前
uni-app x 蒸汽模式 性能测试基准报告 Benchmark【Android版】
android·ios·uni-app
带娃的IT创业者6 小时前
拆掉那堵墙:LibrePods 如何让 AirPods 在 Android 上重获新生
android·开源项目·airpods·librepods·生态解锁
_阿南_8 小时前
flutter 展示的字体突然奔放了
android·flutter·ios
唐青枫9 小时前
Kotlin interface 详解:别再把接口写成空壳和万能开关
kotlin
文人sec11 小时前
MySQL事务与索引做了什么?
android·笔记·mysql
刘洋浪子11 小时前
AndroidStudio保存日志菜单
android
朱涛的自习室11 小时前
从 Prompt 到 Graph:AI 工程的进化史
android·前端·人工智能
2501_9327502612 小时前
Android 中 Serializable 与 Parcelable 的对比与选择
android
FungLeo13 小时前
Flutter 两个反直觉布局坑:ListTile 水波纹 / VerticalDivider 踩坑实录
android·flutter