葛仲珊 stylin,中国房地产信息网,贾正飞
三种方法的思维都是遍历一个map的Key,然后2个Map分别取这2个Key值所得到的Value。
#第一种用entry
private void compareMap(Map<String, String> Map01, Map<String, String Map02>){
for (Map.Entry<String, DiagnoseOutParam> entry : Map1.entrySet())
{
String testKey = entry.getKey();
if(Map1.get(testId).equals(Map2.get(testId))){
System.out.println("equals");
}else{
System.out.println("not equals");
}
}
}
#第二种用keyset的方法,把key值存到容器,分别取出对比
private void compareMap(Map<String, String> Map01, Map<String, String Map02>){
Iterator<String> iter = Map1.keySet().iterator();
while (iter.hasNext()) { String testKey = iter.next();
if(Map1.get(testId).equals(Map2.get(testId))){
System.out.println("equals");
}else{
System.out.println("not equals");
}
##第二种用keyset的方法,遍历Key值
public class CompareMap { public static void main(String[] args) { } private void compare(Map<String, String> map1, Map<String, String> map2) { for (String testkey : map1.keySet()) { if(map1.get(testkey).equals(map2.get(testkey))){ System.out.println("equals"); }else{ System.out.println("not equals"); } } }
在main方法调用并传递参就可以了,
PS:如果需要将结果(相同的value、不同的value)写入文件,则可以写一个write方法,在每次打印写入文件,加文件地址参数即可
结果写入文件方法write
public static void write(String file, String valueOfMap1, String valueOfMap2) { try { BufferedWriter input = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(file, true))); input.write("Map1Output: " + valueOfMap1 + "\r\n"); input.write("Map2Output: " + valueOfmap2 + "\r\n"); input.newLine(); input.close(); } catch (IOException e) { e.printStackTrace(); } }
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
新补丁让Windows 10出现死机、卡顿等 微软坐不住称正解决
Ubuntu 20.04 LTS进驻Windows子系统:只能用3年
ThinkPad正式加入:预装Linux发行版而非Win10的PC越来越多了
最新版Android 11推送!谷歌Pixel 5被曝光:支持反向充电
高度致敬Windows!开源优麒麟20.04 LTS发布:支持5年
电脑小知识:Windows 10是用什么语言写的?到底有多少行代码?
Win10 5月更新准正式版:微软引入大量新功能 系统响应速度快
Windows 10新预览版19613推送:修复任务栏图标显示异常BUG
Windows AD 报错解决:UAC File Virtualization服务启动失败 此驱动程序被阻止加载
网友评论