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]}")
    }
}
相关推荐
雨白3 小时前
Jetpack系列(二):Lifecycle与LiveData结合,打造响应式UI
android·android jetpack
kk爱闹5 小时前
【挑战14天学完python和pytorch】- day01
android·pytorch·python
每次的天空7 小时前
Android-自定义View的实战学习总结
android·学习·kotlin·音视频
恋猫de小郭7 小时前
Flutter Widget Preview 功能已合并到 master,提前在体验毛坯的预览支持
android·flutter·ios
断剑重铸之日8 小时前
Android自定义相机开发(类似OCR扫描相机)
android
随心最为安8 小时前
Android Library Maven 发布完整流程指南
android
岁月玲珑8 小时前
【使用Android Studio调试手机app时候手机老掉线问题】
android·ide·android studio
还鮟12 小时前
CTF Web的数组巧用
android
小蜜蜂嗡嗡14 小时前
Android Studio flutter项目运行、打包时间太长
android·flutter·android studio
aqi0014 小时前
FFmpeg开发笔记(七十一)使用国产的QPlayer2实现双播放器观看视频
android·ffmpeg·音视频·流媒体