Kotlin之for循环

本文详细介绍了在Kotlin中如何高效遍历数组和集合,包括仅获取下标、仅获取元素、同时获取下标和元素的方法,以及如何进行正序、倒序和指定步长的遍历。

常用的:

遍历一个数组/集合,只取出下标:
val array = arrayOf(“a”, “b”, “c”)
for (index in array.indices){
println(“index=$index”)//输出0,1,2
}

 

遍历一个数组/集合,只取出元素:
val array = arrayOf(“a”, “b”, “c”)
for (index in array){
println(“index =$index ”)//输出a,b,c
}

//他俩差别是array后面有没有indices

 

//顺序 遍历0-100 包括0和100
        for (index in 0..100) {
            Log.d(TAG, "- $index")
        }

 //倒序 遍历0-100 包括0和100
        for (index in 100 downTo 0) {
            Log.d(TAG, "$index")
        }

  //顺序 遍历0-99 注意:不包括100(until 排除结束元素)
        for (index in 0 until 100) {
            Log.d(TAG, "$index")
        }

   //遍历0-100 步长为5 输出0 5 10 15 20..
        for (index in 0..100 step 5) {
            Log.d(TAG, "$index")
        }

     val list_test = listOf(User("张三", 25), User("李四", 26), User("王五", 27))

    //取出集合中的每个元素  输出:User(name=张三, age=25) User(name=李四, age=26) User(name=王五, age=27)
        for (user in list_test) {
            Log.d(TAG, "$user")
        }

    //取出下标 输出 0 1 2
        for (index in list_test.indices) {
            Log.d(TAG, "$index")
        }

    /**
         *   取出下标和值  输出: IndexedValue(index=0, value=User(name=张三, age=25)) IndexedValue(index=1, value=User(name=李四, age=26))...
         *   使用"index.index"取出下标
         *   使用"index.value"取出User
         */
        for (index in list_test.withIndex()) {
            Log.d(TAG, "${index.value}")
        }

 

//想同时取出下标和元素

val array = arrayOf(“a”, “b”, “c”)
for ((index,e) in array.withIndex()){
println(“下标=index−−−−元素= index----元素=index−−−−元素=e”)
}
 

原文:https://blog.youkuaiyun.com/weixin_44810052/article/details/91974314

 

Kotlin 中,`for` 循环主要有以下几种常见的使用方式: ### 遍历数组或列表 可以使用 `for` 循环遍历数组或列表中的元素。 ```kotlin val numbers = listOf(1, 2, 3, 4, 5) for (number in numbers) { println(number) } ``` 在这个例子中,`for` 循环会依次取出 `numbers` 列表中的每个元素,并将其赋值给 `number` 变量,然后执行循环体中的代码。 ### 遍历区间 Kotlin 提供了区间(`Range`)的概念,可以使用 `for` 循环遍历区间。 ```kotlin // 遍历从 1 到 5 的区间(包含 5) for (i in 1..5) { println(i) } // 遍历从 1 到 5 的区间(不包含 5) for (i in 1 until 5) { println(i) } // 倒序遍历从 5 到 1 的区间 for (i in 5 downTo 1) { println(i) } // 遍历区间,步长为 2 for (i in 1..5 step 2) { println(i) } ``` ### 遍历 Map 可以使用 `for` 循环遍历 `Map` 中的键值对。 ```kotlin val map = mapOf("apple" to 1, "banana" to 2, "cherry" to 3) for ((key, value) in map) { println("$key: $value") } ``` 在这个例子中,`for` 循环会依次取出 `map` 中的每个键值对,并将键赋值给 `key` 变量,将值赋值给 `value` 变量,然后执行循环体中的代码。 ### 遍历带有索引的列表 如果需要在遍历列表时同时获取元素的索引,可以使用 `withIndex()` 函数。 ```kotlin val fruits = listOf("apple", "banana", "cherry") for ((index, fruit) in fruits.withIndex()) { println("Index: $index, Fruit: $fruit") } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值