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]}")
    }
}
相关推荐
毕设源码-朱学姐11 分钟前
【开题答辩全过程】以 基于Android的大学生兼职APP设计为例,包含答辩的问题和答案
android
tongxh42323 分钟前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
阿拉斯攀登35 分钟前
第 3 篇 保姆级手把手!RK 安卓驱动开发环境搭建(Ubuntu20.04 + 官方 SDK),踩坑全规避
android·驱动开发·瑞芯微·rk安卓驱动
PokeMa38 分钟前
[协程]-[详解]-[协程作用域]-viewModelScope
kotlin·协程·源码分析·viewmodelscope·原理分析·协程作用域
新缸中之脑1 小时前
使用 AI 进行科学调试
android·人工智能·kotlin
QING6182 小时前
Android Gradle Plugin 9.0 升级指南:告别十年技术债,你准备好了吗?
android·kotlin·gradle
Ehtan_Zheng2 小时前
内存泄漏检测:发现隐藏泄漏的工具
android
拭心2 小时前
Android 17 来了!新特性介绍与适配建议
android
Kapaseker3 小时前
一杯美式理解 Inner Class
android·kotlin
三少爷的鞋4 小时前
为什么 Google 不再推荐 SharedPreferences?答案其实只有一个:锁
android