Map如何根据key指定条件进行过滤筛选

 更新时间:2023年09月27日 08:44:57   作者:Yang疯狂打码中  
这篇文章主要介绍了Map如何根据key指定条件进行过滤筛选问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Map根据key指定条件进行过滤筛选

public static void main(String[] args) {
        Map<String,String> map = new HashMap<>();
        map.put("web_1","web1");
        map.put("web_2","web2");
        map.put("app_1","app1");
        map.put("app_2","app2");
        //根据key的指定前缀筛选Map
        map.entrySet().stream().filter(tmMap -> tmMap.getKey().substring(0,3).equals("web")).forEach(tmMap->{
            System.out.println(tmMap.toString());
        });
    }

控制台:

通过给定的key筛选出只含有这些key的map

最近做项目遇到一个需求:

有一个list,里面的元素包含于一个map的key值,然后得出只含有这个list元素的map。

网上查了很多资料,都没有查到我想要的结果,最后还是在外国网站StackOverflow上找到的答案,不得不说这个外国网站里真是各种大神啊!

其实总结下来只有一行代码

map.keySet().retainAll(list); 

但是需要注意

执行完这句代码后map会跟着发生变化,如果有多个不同的list,想通过这些list和原有的map去得到不同的筛选完的map,就得像下面这样做了:

Map<String, Object> newMap  = new HashMap<String, Object>(map);
newMap.keySet().retainAll(list);

将上面这两句代码封装成方法,最后返回newMap就可以了。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 关于dubbo的RPC和RESTful性能及对比

    关于dubbo的RPC和RESTful性能及对比

    这篇文章主要介绍了关于dubbo的RPC和RESTful性能及对比,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • Spring Boot构建优雅的RESTful接口过程详解

    Spring Boot构建优雅的RESTful接口过程详解

    这篇文章主要介绍了spring boot构建优雅的RESTful接口过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • SpringBoot实现固定和动态定时任务的三种方法

    SpringBoot实现固定和动态定时任务的三种方法

    定时器是我们项目中经常会用到的,本文主要介绍了SpringBoot实现固定和动态定时任务的三种方法,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • Maven编译文件的编码设置方法

    Maven编译文件的编码设置方法

    在使用Maven进行Java项目的构建时,正确的文件编码设置对于确保项目能够正确编译和运行至关重要,本文将详细介绍如何在Maven中设置编译文件的编码,以确保项目能够正确处理各种语言的文本内容,需要的朋友可以参考下
    2025-02-02
  • mapstruct的用法之qualifiedByName示例详解

    mapstruct的用法之qualifiedByName示例详解

    qualifiedByName的意思就是使用这个Mapper接口中的指定的默认方法去处理这个属性的转换,而不是简单的get set,今天通过本文给大家介绍下mapstruct的用法之qualifiedByName示例详解,感兴趣的朋友一起看看吧
    2022-04-04
  • 详解Spring Boot 打包分离依赖JAR 和配置文件

    详解Spring Boot 打包分离依赖JAR 和配置文件

    这篇文章主要介绍了Spring Boot 打包分离依赖JAR 和配置文件,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 详解Java策略模式

    详解Java策略模式

    今天给大家带来的是关于Java的相关知识,文章围绕着Java策略模式展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • Java Map的排序实例详解

    Java Map的排序实例详解

    这篇文章主要介绍了 Java Map的排序实例详解的相关资料,希望通过本文大家能够掌握map的排序,需要的朋友可以参考下
    2017-09-09
  • MyBatis中PageHelper不生效的解决方案

    MyBatis中PageHelper不生效的解决方案

    这篇文章主要介绍了MyBatis中PageHelper不生效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • 新版SpringBoot无法主动读取bootstrap.yml的原因和解决方法

    新版SpringBoot无法主动读取bootstrap.yml的原因和解决方法

    在使用新版 Springboot 搭建微服务时 发现配置数据源失败,依赖、配置、注解等所示所有均为正确,所以本文给大家介绍了新版SpringBoot无法主动读取bootstrap.yml的原因和解决方案,需要的朋友可以参考下
    2025-01-01

最新评论