首页 > 其他分享 >判断两个map的key 是否完全一致,key完全一致的情况下 判断key对应的值是否一致,一致返回true 否则false(包含Hutool)

判断两个map的key 是否完全一致,key完全一致的情况下 判断key对应的值是否一致,一致返回true 否则false(包含Hutool)

时间:2024-09-06 21:23:02浏览次数:13  
标签:Map false key areMapsEqual map2 map1 一致 完全一致

你可以通过以下代码来判断两个 Map 的键是否完全一致,并且键对应的值是否一致:

import java.util.Map;

public class MapComparer {
    public static <K, V> boolean areMapsEqual(Map<K, V> map1, Map<K, V> map2) {
        if (map1.size() != map2.size()) {
            return false;
        }

        for (K key : map1.keySet()) {
            if (!map2.containsKey(key)) {
                return false;
            }
            if (!map1.get(key).equals(map2.get(key))) {
                return false;
            }
        }

        return true;
    }

    public static void main(String[] args) {
        // 示例代码
        Map<String, Integer> map1 = Map.of("a", 1, "b", 2);
        Map<String, Integer> map2 = Map.of("a", 1, "b", 2);
        Map<String, Integer> map3 = Map.of("a", 1, "b", 3);

        System.out.println(areMapsEqual(map1, map2)); // true
        System.out.println(areMapsEqual(map1, map3)); // false
    }
}

这段代码首先检查两个 Map 的大小是否相等。如果大小相等,它会遍历 map1 的键,检查 map2 是否包含这些键,以及它们对应的值是否相等。

Hutool 也可以用来比较两个 Map。你可以使用 MapUtil 类的 isEqual 方法来实现这一功能:

import cn.hutool.core.map.MapUtil;
import java.util.Map;

public class MapComparer {
    public static <K, V> boolean areMapsEqual(Map<K, V> map1, Map<K, V> map2) {
        return MapUtil.isEqual(map1, map2);
    }

    public static void main(String[] args) {
        // 示例代码
        Map<String, Integer> map1 = Map.of("a", 1, "b", 2);
        Map<String, Integer> map2 = Map.of("a", 1, "b", 2);
        Map<String, Integer> map3 = Map.of("a", 1, "b", 3);

        System.out.println(areMapsEqual(map1, map2)); // true
        System.out.println(areMapsEqual(map1, map3)); // false
    }
}

Hutool 的 MapUtil 提供了便利的工具方法来简化 Map 的操作。

标签:Map,false,key,areMapsEqual,map2,map1,一致,完全一致
From: https://blog.51cto.com/u_16694558/11939896

相关文章

  • AT_keyence2019_e Connecting Cities 题解
    B算法萌萌题。题解看到完全图求最小生成树,必然是要考虑一下B算法能不能做的。发现这个题的联通块最小值是可以维护的。我们发现。假如我们钦定\(i\)往前面连。那么前面的最小权值必然是一个固定的值。我们一定会连到\(\min(a_j-j\timesD)\)上。由于不能连到自己......
  • 报错时,考虑“版本命名一致性”
    安装paddleocr时报错:--------------------------------------C++Traceback(mostrecentcalllast):--------------------------------------0paddle_infer::Predictor::Predictor(paddle::AnalysisConfigconst&)1std::unique_ptr<paddle::PaddlePredictor,......
  • 如何将 SSH Key 添加到极狐GitLab 中?
    本文分享如何生成SSHKey并添加到极狐GitLab中,然后用SSHKey进行代码拉取。SSHKey对于通过ssh来进行极狐GitLab代码拉取是重要的,完成整个流程一般分为三步:SSHKey的生成添加SSHKey到极狐GitLab中使用ssh克隆代码第一步:生成SSHKey使用ssh-keygen命令来生成SSH......
  • Midjourney 图生图,真人二次元保持一致性,场景多元可选择
    Midjourney图生图,真人二次元保持一致性,场景多元可选择注册试用链接注册试用链接Midjourney拥有强大的图生图的功能,下面我们就来看一下,如何在我们的AceDataCloud网站上实现将照片切换成任意的二次元场景,同时保持人物的一致性。我们可以按照如下的步骤去实现人物一致性......
  • MySQL优化-explain:字段,索引相同的多个数据库为什么他们的type,key,key_len会不一样
    实习倒数第二天,偶然间查了查自己的写的sql语句性能有没有问题。selectCOL1,COL2,COL3frominf_logwhereCODE='AAA'andORDER_ID='123456';上述字段中,code与order_id都被设置为索引IDX_MIAN_ID,IDX_CODE。也就是说,正常情况下这两个索引应该是都会命中公司实现了表的水平......
  • 如何在极狐GitLab中添加 SSH Key?
    本文分享如何生成SSHKey并添加到极狐GitLab中,然后用SSHKey进行代码拉取。**极狐GitLab是GitLab在中国的发行版,可以一键私有化部署,对于中国开发者更友好。详细安装步骤可以查看官网https://dl.gitlab.cn/xed81vsc**。SSHKey对于通过ssh来进行极狐GitLab代码拉取......
  • CamoTeacher:玩转半监督伪装物体检测,双一致性动态调整样本权重 | ECCV 2024
    论文提出了第一个端到端的半监督伪装目标检测模型CamoTeacher。为了解决半监督伪装目标检测中伪标签中存在的大量噪声问题,包括局部噪声和全局噪声,引入了一种名为双旋转一致性学习(DRCL)的新方法,包括像素级一致性学习(PCL)和实例级一致性学习(ICL)。DRCL帮助模型缓解噪音问题,有效利用伪......
  • RestoreFormer++: Towards Real-World Blind Face Restoration from Undegraded Key-V
    RestoreFormer++:TowardsReal-WorldBlindFaceRestorationfromUndegradedKey-ValuePairs(IEEE,2023,8)PaperGitHub动机:认为之前的模型都只关注了图像的纹理信息,而忽视了人脸的细节信息,本文采用多尺度、交叉注意力的方式引入模型的语义信息.总体可以分为两大部分:......
  • 【思考模型框架】BSC,Balance Scorecard(平衡计分卡),帮助企业全面、系统地制定和实施战略
    一、定义BSC,全称为BalancedScorecard(平衡计分卡)BSC,是一种战略规划和管理工具。BSC,是一种战略管理和绩效评估工具。BSC,不仅仅是一个评估工具,更是一种战略执行框架。BSC,从财务、客户、内部运营、学习与成长四个维度出发BSC,通过提供一个全面的框架来评估组织绩效,涵盖了......
  • 超级快速搜索重复文件并批量删除重复文件的AutoHotkey辅助脚本 2024年9月4日
       超级快速搜索重复文件并批量删除重复文件的AutoHotkey辅助脚本 2024年9月4日   ;超级快速搜索重复文件并批量删除重复文件的AutoHotkey辅助脚本2024年9月4日/*用法:1、安装MasterSeeker1.5.1byDxCK或者安装UltraSearchProfessionalVersion4.2.0......