摘要: 1、HashMap底层实现 (数组+链表)。数组的长度总是2的n次方 2、基本属性 2、计算索引位置 为什么再次处理 : 基于算法: 这种计算方式在数组长度是2的n次方时得出的结果是均匀分布的(减少碰撞)。位运算有更高的效率,&运算占2个机器周期(一次逻辑运算和一次写)。 4、get()方法 5、p 阅读全文
posted @ 2018-07-13 18:11 liycode 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 更新时间:2017 06 03 《Java并发编程实战》文摘,有兴趣的朋友可以买本纸质书仔细研究下。 一 线程安全性 1.1 什么是线程安全性 当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些线程如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么 阅读全文
posted @ 2018-07-13 17:56 liycode 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 更新时间:2016 03 17 一、引言 《Effactive Java》中有这样的描述: 和`double int long BigDecimal`。 二、不可变性 是不可变类,每一个操作(加减乘除等)都会返回一个新的对象, 下面以加法操作为例: 我们很容易会认为会输出: 但实际上a plus b 阅读全文
posted @ 2018-07-13 17:44 liycode 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 更新时间:2018 04 19 根据网上资料整理 java 8增加了新的Date Time API (JSR 310),增强对日期与时间的处理。它在很大程度上受到Joda Time的影响。之前写过一篇关于Joda Time的文章,还没写完,现在直接写这个java 8的新Date Time API。 阅读全文
posted @ 2018-07-13 17:30 liycode 阅读(275) 评论(0) 推荐(0) 编辑