![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
集合
文章平均质量分 68
siyue521
这个作者很懒,什么都没留下…
展开
-
HashMap是线程安全的吗?有什么线程安全的方法
总结HashMap在并发场景中不是线程安全的。比如A希望插入一个key-value对到HashMap中,当获取到对应的链表结点位置时,此时线程A的时间片用完了,而此时线程B被调度得以执行,可能线程B占用了A计算得到的位置,插入了数值。而线程A被切换回来的时候,不知道B已经插入了元素,仍然将元素插入此前计算好的位置,这样就会将B线程的插入记录覆盖掉了,这对应了多线程的put可能导致元素的丢失;JDK1.7 当扩容的时候,存在 Entry 链死循环和数据丢失问题(线程1的put和线程2的get并发,可能导致原创 2021-07-06 21:52:58 · 9202 阅读 · 0 评论 -
浅析Java集合框架
Set:无序,不可重复的集合List:有序,重复的集合Map:具有映射关系的集合Queue: 队列集合Java集合和数组的区别:(1)数组长度在初始化时指定,意味着只能保存定长的数据。而集合可以保存数量不确定的数据。(2)数组元素即可以是基本类型的值,也可以是对象。集合里只能保存对象(实际上只是保存对象的引用变量),基本数据类型的变量要转换成对应的包装类才能放入集合类中.Collection接口Collection的常用方法:使用Iterator遍历集合元素Iterator接口中..转载 2021-06-30 16:42:27 · 66 阅读 · 0 评论