当前位置: 首页 > news >正文

map 比较(两个map的key,value 是否一样)

1. 用equals 比较

public static void main(String[] args) {List<Map<String,Object>> list = new ArrayList<>();Map<String,Object> map1= new HashMap<>();map1.put("name","郭");map1.put("objId","1");list.add(map1);Map<String,Object> map2= new HashMap<>();map2.put("name","郭2");map2.put("objId","2");list.add(map2);//Map<String,Object> map3= new HashMap<>();map3.put("name","郭2");map3.put("objId","2");Map<String,Object> map4= new HashMap<>();map4.put("name","郭3");map4.put("objId","2");// trueif(list.contains(map3)){System.out.println("hhh");}// falseif(list.contains(map4)){System.out.println("hhh");}// true(可以用来比较两个map 的key ,value 是否一样)System.out.println(map2.equals(map3));}

底层逻辑:

 

 public boolean equals(Object o) {if (o == this)return true;if (!(o instanceof Map))return false;Map<?,?> m = (Map<?,?>) o;if (m.size() != size())return false;try {for (Entry<K, V> e : entrySet()) {K key = e.getKey();V value = e.getValue();if (value == null) {if (!(m.get(key) == null && m.containsKey(key)))return false;} else {if (!value.equals(m.get(key)))return false;}}} catch (ClassCastException unused) {return false;} catch (NullPointerException unused) {return false;}return true;}

http://www.lryc.cn/news/113730.html

相关文章:

  • LayUI之入门
  • 【Linux】Linux下git的使用
  • QT读写配置文件
  • 【计算机网络】12、frp 内网穿透
  • Pytest 重复执行用例插件----pytest-repeat
  • 【软件工程】5 ATM系统测试
  • opencv读取MP4文件和摄像头数据
  • Qt实现自定义QDoubleSpinBox软键盘
  • 小研究 - 微服务系统服务依赖发现技术综述(一)
  • 2023-08-07力扣今日八题
  • Segment Anything【论文翻译】
  • 银河麒麟QT连接DM8数据库
  • 并发编程1:线程安全性概述
  • (论文复现)DeepAnt模型复现及应用
  • 【机器学习】在 MLOps构建项目 ( MLOps2)
  • 【MySQL】聚合函数与分组查询
  • conda 环境 numpy 安装报错需要 Microsoft Visual C++ 14.0
  • 算法工程师-机器学习面试题总结(5)
  • 论文阅读 RRNet: A Hybrid Detector for Object Detection in Drone-captured Images
  • js执行机制
  • 关于策略模式的注入问题
  • 通用Mapper的四个常见注解
  • 二进制安装K8S(单Master集群架构)
  • 基于java汽车销售分析与管理系统设计与实现
  • Glass指纹识别工具,多线程Web指纹识别工具-Chunsou
  • BIO,NIO,AIO总结
  • [腾讯云Cloud Studio实战训练营]基于Cloud Studio完成图书管理系统
  • (二)Node.js 基础模块
  • AUC及其拓展GAUC
  • 【CSS】CSS 选择器