
java
文章平均质量分 87
CODERLIHAO
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LinkedHashMap实现LRU
比如我们定义一个LRULinkedHashMap类,继承LinkedHashMap,重写removeEldestEntry方法,记得把accessOrder设置为true。就会自动删除最老的数据,比如当缓存容量达到一定值之后,需要把最不经常使用的缓存删掉或者保存到磁盘中。为true,取出操作,就会影响节点在head和tail组成的链表中的位置,即访问次数越多,数据越活跃。在遍历的时候,是乱序的,即不是按照添加的顺序遍历。表示最早添加进Map中的元素,也就是最老的数据,方法,一个空实现的方法,该方法在。原创 2024-11-16 18:50:44 · 509 阅读 · 0 评论 -
HashMap源码分析下
如果这个cap刚好是2的幂次方呢,即4,8,16,32,64等这样的,这样的数已经满足条件了,再减去1,把数变成3,7,31,63。,即hash值的第5为是1,这样在扩容到32后,取索引得出来的结果就和16的不一样了,索引位置比oldCap大了一个oldCap值;,求余数,n是一个2的幂次方数,减去1,即后面全是1,前面全是0,与上这个hash,只能保证经过运算,结果都会在。,即hash值的第5为是0,这样在扩容到32后,取索引得出来的结果还是和16的一样;cap=1,2的0次方就等于1,返回的是就是4。原创 2024-11-16 17:49:09 · 851 阅读 · 0 评论 -
HashMap源码分析上-红黑树
红黑树是一种自平衡二叉查找树(不是平衡二叉树,只不过红黑树近似于平衡的状态),它相对于二叉查找树性能会更加高效(查找、删除、添加等操作需要O(log n),其中n为树中元素的个数),但实现较为复杂(需要保持自身的平衡)。每个节点要么是红色,要么是黑色根节点是黑色如果一个节点是红色,那么它的两个孩子都是黑色(从每个叶子到根的所有路径上不能有两个连续的红色节点)从根到叶节点或空子节点的每条路径,必须包含相同的黑色节点......原创 2024-11-16 17:47:18 · 917 阅读 · 0 评论 -
Java 理论与实践: JDK 5.0 中更灵活、更具可伸缩性的锁定机制
转自新的锁定类提高了同步性 —— 但还不能现在就抛弃 synchronizedJDK 5.0为开发人员开发高性能的并发应用程序提供了一些很有效的新选择。例如,java.util.concurrent.lock 中的类 ReentrantLock 被作为 Java 语言中 synchronized 功能的替代,它具有相同的内存语义、相同的锁定,转载 2015-04-20 09:35:21 · 707 阅读 · 0 评论 -
java格式化日期和时间
字符 说明y将年份 (0-9) 显示为不带前导零的数字。yy以带前导零的两位数字格式显示年份。yyy以四位数字格式显示年份。yy转载 2015-05-05 17:29:44 · 1015 阅读 · 0 评论