6-29HashMap-三种迭代器

Map

创建Map:

//常规创建
Map<String,Integer> map=new HashMap<>();
//红黑树升序排列
TreeMap<String,Integer> treeMap;
//保证key的迭代书序的map
LinkedHashMap<String,Integer> linkedHashMap;
//并发安全的,性能较差
Hashtable hashTable;
//性能极好,并发性也极好
ConcurrentMashMap concurrentMashMao;
//ArraysList的安全版,性能比较差;
Vector vector;

Map是由key和value组成的散列表,一个key只能对应一个value;
key只允许一个null;

面试问题:一个equals必须需要HashCode相等,反之则不行;

方法
添加(如果重复,会把之前相同的覆盖)
Map.put();
查找
Map.get();
将一个旧的所有元素一次性放到另外一个map里
Map.puAll()
删除元素
Mao.remove();
替换
Map.replace
不存在该key,就会添加,防止覆盖
Map.putIfAbsent()----------------------------------------------------------------------
//迭代的三种方式
得到key的集合
Set<String> keySet=Map.keySet();
keySet.forEach(System.out::println);
keySet.forEach(s->System.out.println(s));
KeySet.forEach(key->){System.out.println(key+"-"+map.get(key))};
专业迭代键值对:
Set<Map.Entry<String,Inteeger>> entrySet = Map.entrySet();
entrySet.forEach(entry->
			SYstem.out.println(entry.getKey()+"-"+entry.getValue;));
获取value值
Collection(Integer)=map.values();
----------------------------------------------------------------------

对象键值对实现需要重写equals和hashcode来实现

  								以上内容均为自己理解,不作为准确定理。
  								选择性观看,持续跟新进度,喜欢感谢关注
  												CSDN博主:One_Gun
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

One_Gun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值