【Groovy】集合遍历 ( 调用集合的 any 函数判定集合中是否有指定匹配规则的元素 | 代码示例 )

本文详细介绍了集合的any函数,用于检查集合中是否存在满足特定条件的元素。any函数接受一个闭包作为参数,如果找到匹配的元素,则返回true,否则返回false。文章提供了代码示例,展示如何在Java集合中使用any函数来查找特定字符串是否存在。通过示例,读者可以清晰理解any函数的工作原理及其在实际编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >





一、集合的 any 函数



集合的 any 函数 , 用于判断集合中是否有 满足闭包中的条件 的元素 , 返回一个布尔值 , true 或者 false ;


传入的闭包参数中 , it 表示当前正在判断的 集合元素值 , 在

def list = ["Java", "Kotlin", "Groovy", "Gradle"]

集合中 , it 的类型是集合元素类型 String ;


如果找到了 匹配闭包中的条件 的元素 , 则返回true ; 否则 , 返回 false ;


集合中的 any 函数运行 :


    /**
     * 迭代iterable的内容,并检查谓词是否至少对一个元素有效.
     *
     * @param self    要遍历的 Iterable 对象 , 该参数一般是集合本身
     * @param closure 用于匹配的闭包谓词
     * @return true   如果对象的任何迭代与闭包谓词匹配
     * @since 1.0
     */
    public static <T> boolean any(Iterable<T> self, @ClosureParams(FirstParam.FirstGenericType.class) Closure closure) {
        BooleanClosureWrapper bcw = new BooleanClosureWrapper(closure);
        for (Iterator<T> iter = self.iterator(); iter.hasNext();) {
            if (bcw.call(iter.next())) return true;
        }
        return false;
    }




二、集合的 any 函数代码示例



代码示例 :

class Test {
    static void main(args) {

        // 为 ArrayList 设置初始值
        def list = ["Java", "Kotlin", "Groovy", "Gradle"]

        // 查找集合中是否有 "Java" 元素
        def isMatch = list.any{
            it == "Java"
        }
        // true
        println isMatch

        // 查找集合中是否有 "C++" 元素
        isMatch = list.any{
            it == "C++"
        }
        // false
        println isMatch
    }
}

执行结果 :

true
false

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值