01 2020 档案

摘要:Unsafe 类是JDK底层类库提供的、基于Java内存模型访问底层的机制,通过该类可以实例化对象、直接操作堆外内存(直接内存)、CAS原子操作等。Java基于AQS实现的同步工具类、并发容器,Netty对堆外内存的操作都基于该类实现。 获取Unsafe实例 中提供了静态方法 可以直接获取到 对象, 阅读全文
posted @ 2020-01-29 19:21 程序员肥猫 阅读(217) 评论(0) 推荐(0) 编辑
摘要:ArrayDeque 是基于数组实现到的一个无界双端队列,容量可扩展,不允许null元素,因为移除位的元素将使用null填充。队列的容量是数组的长度,并且数组长度始终是2的次幂。使用 实现栈或者队列比使用 、`LinkedList`效率高。 双端队列可以从头部和尾部新增或移除元素。使用 和`tail 阅读全文
posted @ 2020-01-28 20:48 程序员肥猫 阅读(288) 评论(0) 推荐(0) 编辑
摘要:PriorityQueue 基于 实现,是一个无界队列,不允许null元素。底层存储使用数组,索引n的元素的左右两个孩子索引分别为 和 。 元素通过比较器排序,如果比较器为空,则使用自然排序。 默认容量大小为11,当存储数组中总元素个数等于数组长度时,触发扩容。扩容时,如果原存储数组长度小于64,则 阅读全文
posted @ 2020-01-28 16:02 程序员肥猫 阅读(424) 评论(0) 推荐(0) 编辑
摘要:HashMap 元素顺序:HashMap中元素是乱序的,并不会按照某种规律排序。在添加元素时新元素被插入到最后,扩容时,最后一个元素又被放置在桶的第一个元素。 默认容量为16,负载因子为0.75,扩容时,容量会x2扩大,扩容阈值也x2。 元素以一个数组为桶作为存储,数组的每一个索引位便是一个桶,桶中 阅读全文
posted @ 2020-01-27 16:08 程序员肥猫 阅读(148) 评论(0) 推荐(0) 编辑