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]}")
    }
}
相关推荐
阿巴斯甜20 小时前
Android 报错:Zip file '/Users/lyy/develop/repoAndroidLapp/l-app-android-ble/app/bu
android
Kapaseker21 小时前
实战 Compose 中的 IntrinsicSize
android·kotlin
xq95271 天前
Andorid Google 登录接入文档
android
黄林晴1 天前
告别 Modifier 地狱,Compose 样式系统要变天了
android·android jetpack
冬奇Lab1 天前
Android触摸事件分发、手势识别与输入优化实战
android·源码阅读
城东米粉儿2 天前
Android MediaPlayer 笔记
android
Jony_2 天前
Android 启动优化方案
android
阿巴斯甜2 天前
Android studio 报错:Cause: error=86, Bad CPU type in executable
android
张小潇2 天前
AOSP15 Input专题InputReader源码分析
android
_小马快跑_2 天前
Kotlin | 协程调度器选择:何时用CoroutineScope配置,何时用launch指定?
android