V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yeqizhang  ›  全部回复第 96 页 / 共 98 页
回复总数  1955
1 ... 88  89  90  91  92  93  94  95  96  97 ... 98  
@22yune 昨晚后来我用谷歌搜了一下就比百度出来的结果好的多。
其实主要是很多文章都没讲出最重要的一句前提是 Entry<K,V> next = e.next; ,

假设链表为 a->b->null

一个线程 1 刚好第一次循环执行完 Entry<K,V> next = e.next;,已经拿到之前的链表指向关系,即 e 为 a,则 next 是 b,并且 e.next = newTable[i];设置了链表节点 a 的下个节点为 null,现在不考虑 b 节点的链表结构意图为 a->null,下次循环处理 b ;

实际上另外一个线程 2 已经把链表倒转过来成了:b->a->null,

所以第二次内循环处理 b 节点时,next 是 a !!!,而这里 e.next = newTable[i];设置了链表节点 b 的下个节点为 a ;这里链表结构图为 b->a->null(和线程 2 的结果一致),暂时没有问题,但还要处理 next a 。

第三次循环处理 a,next=a.next 为 null,重点来了:
e.next = newTable[i];设置了链表节点 a 的下个节点为 b !!!改变了原来 a->null,这时候链表就成了,ab 互相指向,没有 null !!!因为这个循环里 next 变量为 null 所以没有下次循环,循环也可以正常结束。(线程 2 两次循环就结束了)

而扩容结束后,因为 ab 这个环的原因,get 使用 next 遍历链表就会死循环。

我这里相当于自己总结了一下做个笔记,谢谢你的回答,我感觉别人总结的东西我都比较难理解,因为每个人的思维方式、理解能力、知识储备等不太一样,我写了这么一些应该你也看不下去,如果发现写的有问题麻烦帮忙指正一下~
有没有老哥知道哪一篇网文解释的好 jdk7 的 HashMap 扩容时成环的原因,我在网上就没找到靠谱点的……总感觉都写的不太对
2020-04-11 00:53:19 +08:00
回复了 ironMan1995 创建的主题 职场话题 观小公司招人贴有感
反正有三轮我是很反感的,不是先 HR+技术面一轮,时间不够或没空就总监或老板再面一轮不就完了。效率高的一个下午就可以了,几轮跑来跑去时间成本、钱花了,最后还不要,耍猴呢~
2020-04-10 13:20:12 +08:00
回复了 LitostCheng 创建的主题 问与答 [关于除湿机]
@LitostCheng 几年前买了一台 299 的志高的。广东这天气,没啥效果,声音还贼大……所以就推荐你买贵点的……
2020-04-10 01:29:24 +08:00
回复了 LitostCheng 创建的主题 问与答 [关于除湿机]
八百以下的不要考虑了……租房建议用空调吧……
2020-04-09 01:53:59 +08:00
回复了 Cleaner007 创建的主题 职场话题 分享一下今天的面试三家公司的经历( Java 实习生)
123 那个问的很注重基础,学学 JVM 就好理解的多。
有些公司会更注重框架之类的。
问你的基础都还算简单的
2020-04-09 01:42:12 +08:00
回复了 yuang 创建的主题 职场话题 分享一次奇葩面试经历
这也是考察沟通能力,笑死了。golang 和 js 的区别,楼主回答的言简意赅,问题不大。
面试各种啥啥的区别,有些根本就不能用区别来说。直接问两个东西各自的特点不就完了
2020-04-08 21:03:05 +08:00
回复了 justin2018 创建的主题 优惠信息 招商银行 APP-首页横幅-招行生日快乐-抽奖
1 块,谢谢,经常逛逛 V 线还能薅羊毛。嘻嘻
2020-04-08 20:57:29 +08:00
回复了 woniuppp 创建的主题 职场话题 Favicon 上班摸鱼小工具代码
上班都能看小视频了?
2020-04-08 20:38:08 +08:00
回复了 revival83 创建的主题 健康 有老兄做过普通胃镜么?看别人反馈生不如死
我有个朋友说,无痛都痛呢……
真秀,前端个个都这么牛逼
2020-04-06 23:33:04 +08:00
回复了 nexmoe 创建的主题 站长 初中开发一个主页,一直维护到现在
不错不错,能不能开源?
能否支持导出导入导航链接数据?还有导航数据支持本地存储?最好这种页面能够支持无登陆状态使用
2020-04-05 19:44:20 +08:00
回复了 Sunxb 创建的主题 程序员 即时通讯 app 的技术栈
@jackrelative 感觉 9 少了点,不知道企鹅做到了多少个 9 。而且应该有 ack 保证 100%?
2020-04-04 20:15:25 +08:00
回复了 qq12046 创建的主题 问与答 你们的小视频都存在哪里而且方便观看的
我还以为那种视频呢……不知道你说的方便观看是啥意思……图省事 NAS 群晖买一个……还能远程看
说实话,怎么处理同一光纤里面的那么多的光信号都够复杂了吧……
2020-04-04 13:36:32 +08:00
回复了 whatalittleboy 创建的主题 分享发现 研究称每周食用 3~6 个鸡蛋为宜---咋研究出来的?
不是每天适合吃一个吗……我觉得吃两个问题不大,也要看鸡蛋大小,自家的土鸡蛋比较小。
好多年前,一次吃多了三四个鸡蛋,那时候消化不是很好,部门在肚子里逛了一圈原样出来了……
2020-04-04 13:32:22 +08:00
回复了 shiguang 创建的主题 职场话题 不是?我怎么感觉外包真香呢?
@nicocho 最恶心的是换项目组,还要再面试。这样换来换去没有某一方面的业务的技术积累,比如专门搞 saas 、资讯、电商之类的,也没法升职。最可怕的是自己的公司派出去的项目经理内部还要再面试你,甲方那边的面你还说的过去。
1 ... 88  89  90  91  92  93  94  95  96  97 ... 98  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   989 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 38ms · UTC 21:37 · PVG 05:37 · LAX 14:37 · JFK 17:37
Developed with CodeLauncher
♥ Do have faith in what you're doing.