/*** difference* Maps.difference(Map, Map)用来比较两个Map以获取所有不同点。该方法返回MapDifference对象*/
MapDifference<String, Object> difference = Maps.difference(map1, map2);
// 是否有差异,返回boolean
boolean areEqual = difference.areEqual();
System.out.println("比较两个Map是否有差异:" + areEqual);
// 两个map的交集
Map<String, Object> entriesInCommon = difference.entriesInCommon();
System.out.println("两个map都有的部分(交集)===:" + entriesInCommon);
// 键相同但是值不同值映射项。返回的Map的值类型为MapDifference.ValueDifference,以表示左右两个不同的值
Map<String, MapDifference.ValueDifference<Object>> entriesDiffering = difference.entriesDiffering();
System.out.println("键相同但是值不同值映射项===:" + entriesDiffering);
// 键只存在于左边Map的映射项
Map<String, Object> onlyOnLeft = difference.entriesOnlyOnLeft();
System.out.println("键只存在于左边Map的映射项:" + onlyOnLeft);
// 键只存在于右边Map的映射项
Map<String, Object> entriesOnlyOnRight = difference.entriesOnlyOnRight();
System.out.println("键只存在于右边Map的映射项:" + entriesOnlyOnRight);
比较两个Map是否有差异:false
两个map都有的部分(交集)===:{马六=752}
键相同但是值不同值映射项===:{张三=(123, 345)}
键只存在于左边Map的映射项:{李四=457, 王五=235, 王八=752}
键只存在于右边Map的映射项:{田七=125}

Ps:哪怕Map当中KV之间的顺序不一样,也会忽略的噢~

Guava - Maps.difference相关推荐

  1. 面试官系统精讲Java源码及大厂真题 - 14 简化工作:Guava Lists Maps 实际工作运用和源码

    简化工作:Guava Lists Maps 实际工作运用和源码 更新时间:2019-09-24 10:32:00 如果不想在世界上虚度一生,那就要学习一辈子. 引导语 在日常工作中,我们经常会使用一些 ...

  2. Google Guava 库用法整理

    http://macrochen.iteye.com/blog/737058 参考: http://codemunchies.com/2009/10/beautiful-code-with-googl ...

  3. [Google Guava] 2.3-强大的集合工具类:java.util.Collections中未包含的集合工具

    原文链接 译文链接 译者:沈义扬,校对:丁一 尚未完成: Queues, Tables工具类 任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collections包含的工具方法.G ...

  4. 一篇让你熟练掌握Google Guava包(全网最全)

    Google Guava guava开源库的地址:https://github.com/google/guava 概述 工具类 就是封装平常用的方法,不需要你重复造轮子,节省开发人员时间,提高工作效率 ...

  5. [Java]-Guava工具库简介

    文章目录 字符串 Jointer Splitter 拆分器工厂 拆分器修饰符 CharMatcher 工厂方法 操作方法 Strings 集合 不可变集合 新型集合 Multiset Multimap ...

  6. 【编程实践】Google Guava 极简教程

    前言 Guava 工程包含了若干被 Google 的 Java 项目广泛依赖 的核心库,我们希望通过此文档为 Guava 中最流行和最强大的功能,提供更具可读性和解释性的说明. 适用人群 本教程是基础 ...

  7. java工具谷歌工具-Google guava工具类的介绍和使用

    工具类 就是封装平常用的方法,不需要你重复造轮子,节省开发人员时间,提高工作效率.谷歌作为大公司,当然会从日常的工作中提取中很多高效率的方法出来.所以就诞生了guava. guava的优点: 高效设计 ...

  8. Java Guava工具类的使用

    Guava工具类简介 在开发中,工具类的使用避免上重复造轮子,极大的节省了开发时间,提高了工作效率,Google公司提供的Guava工具类,高效设计良好的API,遵循高效的java语法,使代码更加简洁 ...

  9. 吐血整理的Google Guava

    一.概述   Guava 是由Google开发的基于Java的开源库,包含许多Google核心库,它有助于最佳编码实践,并有助于减少编码错误.它为集合 [collections] .缓存 [cachi ...

最新文章

  1. 马斯克Neuralink被曝“虐杀实验猴”,140万元美金项目遭谴责
  2. 《你不可不知的50个建筑学知识》之哥特式建筑
  3. 第六讲:软考中高项06_质量管理、人力资源管理
  4. python循环语句-详解Python中的循环语句的用法
  5. 转载:JavaScript,JS如何控制input输入字符限制
  6. 【性能测试】如何用一条命令完全掌握linux系统性能监控(top高阶用法)
  7. 超越JUnit –测试框架的替代方案
  8. [codevs1039]数的划分
  9. matlab如何持续存贮多维矩阵,matlab多维矩阵在内存中存储顺序
  10. xmind快捷键_小冰笔记 | 请在XMIND里写下你的MIND!
  11. exe模拟器android版,安卓exe模拟器
  12. Q3净利润同比涨超313%,金山办公为何不能松懈?
  13. 芝加哥大学校长:诺贝尔奖人才是怎样炼成的?
  14. 弹弹堂弹道模拟程序——第一帖
  15. c语言程序设计慕课版答案潘晟旻,附件1团队及组成.doc
  16. 我的python学习之路
  17. vue3.0 + elementPlus 后台管理系统模板
  18. html 页面下雪效果,HTML5超逼真下雪场景效果
  19. 【实用技巧】微信清理
  20. 企业对员工职业生涯规划设计方法

热门文章

  1. 数据结构-链表 JavaScript | 有图 | 有过程 | 有真相
  2. 2009年必看十大动漫游戏改编电影
  3. 如何在百度搜索到自己的网站?新站必看
  4. 第三章:fog(恐惧感 fear,责任感obligation,罪恶感guilty)
  5. android 流媒体 播放器 项目 源码
  6. 灰帽子python 读书笔记 1
  7. lol登入服务器显示证书,登录LOL提示安全证书不可用怎么办
  8. LinkedIn learning (旧Lynda)国外图书馆账号申请
  9. DDD领域驱动设计为什么那么玄学,因为你从来都没看过原书
  10. 用python制作简单的二维码生成器