Groovy集合遍历 ( 使用集合的 eachWithIndex 方法进行遍历 | 代码示例 )
Posted 韩曙亮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Groovy集合遍历 ( 使用集合的 eachWithIndex 方法进行遍历 | 代码示例 )相关的知识,希望对你有一定的参考价值。
一、使用集合的 eachWithIndex 方法进行遍历
集合的 eachWithIndex 方法 , 该函数传入一个 Closure 闭包作为参数 , 闭包中有 2 2 2 个参数 , 分别是 T 和 Integer 类型的 , T 就是集合元素类型 , Integer 是当前遍历的集合元素的索引值 ;
因此 , 使用 eachWithIndex 方法遍历集合 , 可以在传入的闭包中 , 得到集合的 当前遍历条目值 , 和 当前遍历的下标索引 ;
eachWithIndex 方法 返回值是 self 自身 , 可以看到 , 该方法的 返回值还是集合本身 , 如果在遍历过程中修改集合的值 , 原集合的值会被修改 ;
集合 eachWithIndex 方法原型 :
/**
* 迭代 iterable 类型,
* 将每个项和项的索引(从零开始的计数器)传递给给定的闭包。
*
* @param self 一个 Iterable 实例对象
* @param closure 在每个项中执行的闭包
* @return Iterable 实例对象本身
* @since 2.3.0
*/
public static <T> Iterable<T> eachWithIndex(Iterable<T> self, @ClosureParams(value=FromString.class, options="T,Integer") Closure closure)
eachWithIndex(self.iterator(), closure);
return self;
二、代码示例
代码示例 :
class Test
static void main(args)
// 为 ArrayList 设置初始值
def list = ["1", "2", "3"]
// I. 使用 eachWithIndex 遍历集合 , 返回集合本身
def list3 = list.eachWithIndex String entry, int i ->
// String entry 是集合元素本身
// int i 是集合元素下标
println "$i : $entry"
println list
println list3
执行结果 :
0 : 1
1 : 2
2 : 3
[1, 2, 3]
[1, 2, 3]
以上是关于Groovy集合遍历 ( 使用集合的 eachWithIndex 方法进行遍历 | 代码示例 )的主要内容,如果未能解决你的问题,请参考以下文章
Groovy集合遍历 ( 使用集合的 collect 循环遍历集合并根据指定闭包规则生成新集合 | 代码示例 )
Groovy集合遍历 ( 使用集合的 reverseEach 方法进行遍历 | 倒序集合迭代器 ReverseListIterator 类简介 | 代码示例 )
Groovy集合遍历 ( 使用集合的 findAll 方法查找集合中符合匹配条件的所有元素 | 代码示例 )
Groovy集合遍历 ( 使用集合的 findAll 方法查找集合中符合匹配条件的所有元素 | 代码示例 )