【Java】可以存储相同key值的Map类型

举报
翟文彪 发表于 2021/12/25 22:18:40 2021/12/25
【摘要】 IdentityHashMap 传统的Map类型例如HashMap,在存储相同key值的数据的时候,之后存储的数据会把之前存在数据覆盖,保证Map中只有一个key值存在。例如: HashMap<...

IdentityHashMap

传统的Map类型例如HashMap,在存储相同key值的数据的时候,之后存储的数据会把之前存在数据覆盖,保证Map中只有一个key值存在。例如:

HashMap<String,String> map = new HashMap<>();
map.put("1","A");
map.put("1","B");
System.out.println(map);

  
 
  • 1
  • 2
  • 3
  • 4

最后输出的结果是"1":"B"

但是IdentityHashMap的特性可以保存属于自己的key值,这个key值可以和其他的key值“相同”。例如:

IdentityHashMap<String,String> map = new IdentityHashMap();
map.put(new String("1"),"A");
map.put(new String("1"),"B");
System.out.println(map);

  
 
  • 1
  • 2
  • 3
  • 4

输出的结果是"1":"A","1":"B"

例子:

//IdentityHashMap形式通过创建对象的形式添加key值,可以保证在map中存入重复的key
IdentityHashMap<String,String> map = new IdentityHashMap();
//遍历实体类型集合,分别key和value赋值给map的key和value,用new对象的形式
for (QuestionParameterModel parameter : questionParameter) {
    map.put(parameter.getKey(),parameter.getValue());
}
System.out.println(map);
//通过学生登录的手机号查询对应的cookie
UserEntity userEntity = userDao.selectuserbycode(studentId);
//发送请求
String response = HttpUtilsFormData.doPost1(HttpUrlConstant.POST_QUESTION,userEntity.getCookie(), map);
System.out.println(response);

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

文章来源: blog.csdn.net,作者:翟文彪,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/zwb568/article/details/121060698

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。