java 将Map拷贝到另一个Map对象当中
java 将Map拷贝到另一个Map对象当中
CreateTime--2018年6月4日09点46分
Author:Marydon
1.需求说明
将一个MapA对象中所有的键值对完全拷贝到另一个MapB对象中;
另一个MapB对象中原来的键值保持不变(不受影响);
拷贝成功后MapB对象当中的内容将不再随着MapA中内容的变化而变化。
2.代码实现
- import java.util.HashMap;
- import java.util.Iterator;
- import java.util.Map;
- /**
- * 复制map对象
- * @explain 将paramsMap中的键值对全部拷贝到resultMap中;
- * paramsMap中的内容不会影响到resultMap(深拷贝)
- * @param paramsMap
- * 被拷贝对象
- * @param resultMap
- * 拷贝后的对象
- */
- public static void mapCopy(Map paramsMap, Map resultMap) {
- if (resultMap == null) resultMap = new HashMap();
- if (paramsMap == null) return;
- Iterator it = paramsMap.entrySet().iterator();
- while (it.hasNext()) {
- Map.Entry entry = (Map.Entry) it.next();
- Object key = entry.getKey();
- resultMap.put(key, paramsMap.get(key) != null ? paramsMap.get(key) : "");
- }
- }
3.测试
- public static void main(String[] args) {
- Map<String, String> map = new HashMap<String, String>(1);
- map.put("name", "Marydon");
- Map<String, Object> map2 = new HashMap<String, Object>(1);
- map2.put("age", 20);
- // 测试一:是否实现拷贝
- mapCopy(map2, map);
- System.out.println(map);// {age=20, name=Marydon}
- System.out.println(map2);// {age=20}
- // 测试二:拷贝后的map对象是否受原map对象的影响
- map2.clear();
- System.out.println(map);// {age=20, name=Marydon}
- System.out.println(map2);// {}
- }
java 将Map拷贝到另一个Map对象当中的更多相关文章
- 判断map是否包含另一个map
判断map是否包含另一个map: map不同与list集合,list集合有直接判断集合是否包含其他集合或者元素的方法. boolean contains(Object o) 如果list包含指定的元素 ...
- 编写一个程序,把指定目录下的所有的带.java文件都拷贝到另一个目录中,拷贝成功后,把后缀名是.java的改成.txt。
package example; import java.io.*; public class Test { public static void main(String[] args) throws ...
- java catch 捕获异常后会产生一个实例对象 该对象能使用父类的方法
- Java虚拟机系列(二)---HotSpot虚拟机对象
都知道Java是一门面向对象的编程语言,在Java程序运行过程中,无时无刻不在创建对象,所以这节来总结一下HotSpot虚拟机中的Java对象. 一.Java虚拟机对象的创建过程. 在语义层面创建一个 ...
- [Java编程思想] 第二章 一切都是对象
第二章 一切都是对象 2.1 用引用操纵对象 创建一个String引用: String s; 这里所创建的只是引用,并不是对象. 创建一个引用的同时便初始化: String s = &qu ...
- BeanUtils使用:从一个map集合中,拷贝到javaBean中(四)
package beanutil; import java.lang.reflect.InvocationTargetException; import java.util.HashMap; impo ...
- Bean-Query 一个把对象转换为Map的Java工具库
刚开源了一个经过完整測试的Java工具类. 地址例如以下: https://github.com/Jimmy-Shi/bean-query 使用说明例如以下: Bean-query Click Her ...
- java map添加另一个map时候 键值对的类型要一致
java map添加另一个map时候 键值对的类型要一致
- java中list里面存放map,根据map中的某一个字段进行排序
package com; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; ...
随机推荐
- 系统字体的Regular、Light等几种名称的区别
以苹果系统中的PingFang SC系列字体为例,其中常见的有下面几种类型可以细分如下. PingFang SC ExtraLight 苹方 特细 PingFang SC Light ...
- static关键字与方法区和类加载
1.static的作用 答:将成员变量或方法存储进方法区.因为方法区能保证数据只存在一份,只会加载一次(类加载器加载类的时候才加载一次) 注:static Object obj = new Objec ...
- SQL:查询学习笔记
SQL 查询命令 SELECT 语法 SELECT "column_name" FROM "table_name"; 返回一列 SELECT Username ...
- StringUtils类常用方法介绍
StringUtils方法包的位置:org.apache.commons.lang.StringUtils StringUtils 方法的操作对象是 java.lang.String 类型的对象,是 ...
- FFMpeg开发使用
1.jjmpeg下载 https://code.google.com/p/jjmpeg/downloads/list 2.ffmpeg文档地址 https://www.ffmpeg.org/ 3.安卓 ...
- css3 3d展示中rotate()介绍与简单实现
最近在了解css3的3d动画效果,学习发现,css3中的3d效果实现还是很好玩的,现在我给你大家简单的介绍一下css3中3d效果的实现. 我也只是一个初学者,如果在博客中写的不对的地方欢迎指正. 好了 ...
- MIR Flickr 1M 图像数据集(点击即可下载)
Index of /mirflickr/mirflickr1m Name Last modified Size Description Parent Directory - exif.zip ...
- 【IUML】支持向量机SVM[续]
支持向量机基本上是最好的有监督学习算法了.看很多正统的讲法都是从VC 维理论和结构风险最小原理出发,然后引出SVM什么的,还有些资料上来就讲分类超平面什么的.我们logistic回归出发,引出了SVM ...
- 用过Retina视网膜屏幕的笔记本电脑的后果
用过Retina视网膜屏幕的笔记本电脑的后果是过程中感觉很不错,但是结果是普通屏幕再也看不上眼了.发现了原来看的好好的屏幕多出了许多的像素点,没办法,火眼金睛了.
- go的基结构体如何使用派生结构体的方法
将派生类的方法声明为接口嵌入到基结构体中,派生结构体声明该接口为自身.