zoukankan      html  css  js  c++  java
  • Java Map 求交集 并集 差集

    import com.google.common.collect.MapDifference;
    import com.google.common.collect.Maps;

    import java.util.Map;

    public class MapUtil {

    /**
    * difference
    * Maps.difference(Map, Map)用来比较两个Map以获取所有不同点。该方法返回MapDifference对象
    */
    public static void u(Map<String,Object> map1, Map<String,Object> map2) {
    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);
    }
    }
  • 相关阅读:
    四则运算(判断正误)
    Right-BICEP要求四则2的测试用例
    《构建之法》阅读笔记02
    第二周的学习进度
    四则运算(升级)
    构建之法阅读笔记01
    新手安装使用codeblocks
    新的一年你该如何起飞
    中国国家图书馆 注册后可以免费使用 维普等多个数据库资源
    c++学籍管理系统v1.10
  • 原文地址:https://www.cnblogs.com/AmbitiousMice/p/13998107.html
Copyright © 2011-2022 走看看