groovymap集合(map集合遍历|使用map集合的find方法遍历map集合|代码示例)(代码片段)

韩曙亮 韩曙亮     2023-03-09     696

关键词:





一、使用 map 集合的 find 方法遍历 map 集合



使用 map 集合的 find 方法遍历 map 集合 , 传入一个闭包参数 ;

该闭包中 , 可以有 1 1 1 个参数 , 也可以有 2 2 2 个参数 ;

  • 如果 有 1 1 1 个参数 , 则 传递 Entry 键值对 对象 ;
  • 如果有 2 2 2 个参数 , 则 传递 键 和 值 两个对象 ;

该方法会返回 map 集合中 第一个查找到的 Entry 键值对对象 , 该对象中包含一个 键 和 值 ;


map 集合的 find 方法 函数原型 :

    /**
     * 查找与闭包条件匹配的第一个条目。
     * 如果闭包包含两个参数,则传递入口键和值。
     * 如果闭包包含一个参数,则映射。已传递Entry对象。
     * <pre class="groovyTestCase">assert [a:1, b:3].find  it.value == 3 .key == "b"</pre>
     *
     * @param self    map 集合
     * @param closure 闭包条件 , 有 1 或 2 个参数
     * @return 返回找到的第一个对象
     * @since 1.0
     */
    public static <K, V> Map.Entry<K, V> find(Map<K, V> self, @ClosureParams(MapEntryOrKeyValue.class) Closure<?> closure) 
        BooleanClosureWrapper bcw = new BooleanClosureWrapper(closure);
        for (Map.Entry<K, V> entry : self.entrySet()) 
            if (bcw.callForMap(entry)) 
                return entry;
            
        
        return null;
    




二、代码示例



代码示例 :

class Test 
    static void main(args) 

        // 创建键值对
        // 键 Key 可以不使用引号 , 可以使用单引号 '' , 也可以使用双引号 ""
        def map = [J:"Java", "K":"Kotlin", 'G':"Groovy"]

        // 遍历 map 集合
        def entry = map.find  key, value ->
            value =~ "a"
        

        // 打印查找结果
        println entry
    


执行结果 :

J=Java

groovymap集合(map集合操作符重载|*.展开操作符|代码示例)(代码片段)

文章目录一、map集合"*."展开操作符二、代码示例一、map集合"*."展开操作符对map集合使用"*."展开操作符,会将map集合中的所有键值对都进行遍历,并且调用指定的方法;并且,将指定方法的调用返回结果输出到一个... 查看详情

groovymap集合(map集合定义|通过getclass函数获取map集合的类型|代码示例)(代码片段)

文章目录一、map集合定义二、获取map集合类型三、代码示例一、map集合定义声明键值对,其中键Key可以不使用引号,可以使用单引号‘’,也可以使用双引号“”;//创建键值对//键Key可以不使用引号,可以使用单引号'',也可以使... 查看详情

groovymap集合(根据key获取map集合中对应的值|map.key方式|map.‘key’方式|map[‘key’]方式|代码示例)(代码片段)

文章目录一、根据Key获取map集合中对应的值1、通过map.Key方式获取map集合中的值Value2、通过map.'Key'方式获取map集合中的值Value3、通过map['Key']方式获取map集合中的值Value二、完整代码示例一、根据Key获取map集合中对应的... 查看详情

groovymap集合(map集合操作符重载|使用<<操作符添加一个元素|代码示例)(代码片段)

文章目录一、使用"<<"操作符添加一个元素二、代码示例一、使用"<<"操作符添加一个元素对map集合使用"<<"操作符,可以向map集合中添加一个键值对元素;调用该"<<"操作符,相当于调用了map集... 查看详情

groovymap集合(map集合操作符重载|-操作符重载|代码示例)(代码片段)

文章目录一、map集合"-"操作符重载二、完整代码示例一、map集合"-"操作符重载对map集合使用"-"操作符,相当于调用了map集合的minus方法,该方法传入222个参数:Map<K,V>self参数:相当于"-"操作符左侧的值;Maprem... 查看详情

groovymap集合(map集合操作符重载|+操作符重载|代码示例)(代码片段)

文章目录一、map集合"+"操作符重载二、代码示例一、map集合"+"操作符重载对map集合使用"+"操作符,操作符两侧都是map集合,调用的是map集合的plus方法,plus函数有222个参数:第一个参数,Map<K,V>left参数是&#... 查看详情

kotlin集合操作⑤(map集合|获取map值|map遍历|可变map集合)(代码片段)

文章目录一、Map集合二、获取Map值三、Map遍历四、可变Map集合一、Map集合调用mapOf函数创建Map集合,键值对元素有两种初始化方式:使用to函数进行初始化:在参数中使用键to值的方式进行初始化;使用Pair对象进行初始化:传入Pair(键,值... 查看详情

kotlin集合操作⑤(map集合|获取map值|map遍历|可变map集合)(代码片段)

文章目录一、Map集合二、获取Map值三、Map遍历四、可变Map集合一、Map集合调用mapOf函数创建Map集合,键值对元素有两种初始化方式:使用to函数进行初始化:在参数中使用键to值的方式进行初始化;使用Pair对象进行初始化:传入Pair(键,值... 查看详情

遍历map集合的几种方法

遍历Map集合的几种方法  方法1:使用迭代器iterator遍历集合HashMap<Integer,Long>map=newHashMap<Integer,Long>();  for(inti=1;i<=50;i++){  map.put(i,Math.round(3.14*i*i));}//map转换为set集合Set<Entry< 查看详情

map集合遍历的四种方式理解和简单使用-----不能for循环遍历

 ~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值1:无非就是通过map.keySet()获取到值,然后根据键获取到值  for(Strings:map.keySet()){        &n... 查看详情

遍历map集合的三种方法

1:使用map.keySet()Setset=map.keySet();for(Stringkey:set)Stringvalue=map.get(key);2:使用map.entrySet()Set<Map.Entry<String,String>>set=map.entrySet();for(Map.Entry<String,String>entryset:set)Stringkey=entry.getKey();Stringvalue=entry.getValue();3:使用map.values()Connection... 查看详情

集合map可变参数collections(代码片段)

第9天集合今日学习内容?Map集合今日学习目标?能够说出Map集合特点?使用Map集合添加方法保存数据?使用”键找值”的方式遍历Map集合?使用”键值对”的方式遍历Map集合?能够使用HashMap存储自定义键值对的数据?能够说出可变参数的... 查看详情

使用entryset遍历map类集合kv,而不是keyset方式进行遍历的好处

使用entrySet遍历Map类集合KV,而不是keySet方式进行遍历。说明:keySet其实是遍历了2次,一次是转为Iterator对象,另一次是从hashMap中取出key所对应的value。而entrySet只是遍历了一次就把key和value都放到了entry中,效率更高。如果是JDK8... 查看详情

遍历map集合

遍历map集合for(Map.Entry<String,Object>entry:processVariables.entrySet()){System.out.println(entry.getKey()+"--->"+entry.getValue());} 查看详情

集合框架----------map集合遍历的方法

importjava.util.*;/***Map集合遍历的方法*@authorAdministrator**/publicclassTest2{ publicstaticvoidmain(String[]args){ Map<String,String>map=newHashMap<String,String>(); /*Java提供两种不同的类型: *引用类型和原 查看详情

java中map集合的三种遍历方式(代码片段)

文章目录Map集合的遍历方式Map集合的遍历方式一:键找值Map集合的遍历方式二:键值对Map集合的遍历方式三:LambdaMap集合的遍历方式Map集合的遍历方式有3种:方式一:键找值的方式遍历:先获取Map集合全部的键,再根据遍... 查看详情

map集合的遍历

1packageCollection;23importjava.util.HashMap;4importjava.util.Iterator;5importjava.util.Map;6importjava.util.Set;78importorg.junit.Test;9/**10*11*@authorAdministrator12*遍历Map集合13*Map<key,val>14* 查看详情

遍历map集合的集中方式

在编写Java程序中经常用到map集合;Map:集合中的每一个元素包含一对键对象和值对象,集合中没有重复的键对象,值对象可以重复。(Key-Value);遍历map集合的方式有几种,下面介绍几种:importjava.util.HashMap;importjava.util.Iterator;imp... 查看详情