绹宝招2020届实习生
个人简介有邮箱,联系发我简历~~~
不会汪汪的猫咪
可以称得上是做互联网金融的开发工程师,会点Java,会点Python
展开
-
源码学习【原子类AtomicInteger】Java原子类底层实现(解释详细)
原子类AtomicInteger在Java中,有很多方法可以保证多线程下数据的安全,AtomicXXXX这些类就是其中的一种,原子类,可以保证每一步操作都是原子操作。这次就对AtomicInteger的源码进行学习。首先看一下这个类的类变量和成员变量://类变量 unsafe类【java不能直接访问操作系统底层,而是通过本地方法来访问。Unsafe类提供了硬件级别的原子操作】//这里...原创 2018-08-11 10:35:12 · 1122 阅读 · 0 评论 -
源码学习【HashMap第一篇】HashMap到底是怎么put的?
HashMap到底是怎么put 的?这是我的专栏的第一篇,有任何错误,希望大家不吝赐教,共同学习。写这个专栏主要是自己学习源码的过程,如果对别人能有所帮助,不胜开心~关于HashMap中的红黑树这里不做讨论,后续可能会进行源码分析直接上源码,jdk1.8 put代码片段一final V putVal(int hash, K key, V value, boolean onl...原创 2018-08-08 20:17:52 · 233 阅读 · 0 评论 -
源码学习【HashMap第二篇】hashMap为什么size 是2的 n次方倍
这里,因为hashmap求数组位置的时候都是直接hashcode&数组大小,以前我只是想到一个数&一个数肯定会小,可以使得index在size之内取值。没有考虑到hash碰撞的问题,后来看到一篇博客后才理解。首先取模操作时可以保证均分的,但是取模操作性能比较差,所以hashMap使用了近乎取模的&,并且是与上一个size-1的数,达成了变相取模的操作。但是这时候,s...原创 2018-07-25 09:36:52 · 1416 阅读 · 0 评论