清欢渡-编程社-第235页
清欢渡的头像-编程社
管理员
但愿日子清净,抬头遇见的都是柔情!
HashMap实现原理-编程社

HashMap实现原理

HashMap的数据结构: *底层使用hash表数据结构,即数组+链表+红黑树 当我们往HashMap中put元素时,利用key的hashCode重新hash计算出当前对象的元素在数组中的下标 存储时,如果出现hash值相同的...
HashMap的jdk1.7和jdk1.8有什么区别-编程社

HashMap的jdk1.7和jdk1.8有什么区别

JDK1.8之前采用的是拉链法:将链表和数组相结合。 也就是说创建一个链表数组,数组中每一格就是一个链表。若遇到哈希冲突,则将冲突的值加到链表中即可。 jdk1.8在解决哈希冲突时有了较大的变化...
HashMap源码分析 – 常见属性-编程社

HashMap源码分析 – 常见属性

static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16 /** * The maximum capacity, used if a higher value is implicitly specified * by either of the constructors with ...
HashMap的put方法的具体流程-编程社

HashMap的put方法的具体流程

HashMap,添加数据流程图 1、判断键值对数组table是否为空或为null,否则执行resize()进行扩容(初始化长度16的数组) 2、根据键值key计算hash值得到数组索引 3、判断table[i]==null,条件成立,...
线程的六种状态-编程社

线程的六种状态

线程的状态可以参考JDK中的Thread类中的枚举State,存在六种状态 public enum State { //尚未启动的线程的线程状态 NEW, //可运行线程的线程状态 RUNNABLE, //线程阻塞等待监视器锁的线程状态 BL...
线程的五种状态-编程社

线程的五种状态

五种状态的说法来自于操作系统层面的划分 运行态:分到 cpu 时间,能真正执行线程内代码的 就绪态:有资格分到 cpu 时间,但还未轮到它的 阻塞态:没资格分到 cpu 时间的 涵盖了 java 状态中提...
Istio新架构揭秘:环境化Mesh-编程社

Istio新架构揭秘:环境化Mesh

自问世以来,Istio因其使用Sidecar(可编程代理与应用容器一同部署)而备受认可。 这种架构选择使Istio用户能够享受其好处,而无需对其应用进行 drast 改变。 这些可编程代理,与应用容器紧密部...