随笔分类 - JDK成长记
摘要:如下阻塞队列+线程的代码,很常见,当服务停止时,如何停止被BlockingQueue阻塞的线程? public class BlackingQueueTest { public static void main(String[] args) { BlockingQueue<Integer> bloc
阅读全文
摘要:HashMap基本原理和优缺点 一句话讲, HashMap底层数据结构,JDK1.7数组+单向链表、JDK1.8数组+单向链表+红黑树。 HashMap的3个底层原理 首先你应该知道HashMap的核心方法之一就是put。我们带着如下几个问题来看下图: hash值计算的算法是什么?就是key.has
阅读全文
摘要:我们绕点远路来回答这个问题。编程分为两类:系统编程(system programming)和应用编程(application programming)。所谓系统编程,简单来说,就是编写库;而应用编程就是利用写好的各种库来编写具某种功用的程序,也就是应用。系统程序员会给自己写的库留下一些接口,即API
阅读全文
摘要:1.ArrayList基本原理以及优缺点 1.1ArrayList基本原理 一句话讲,在JDK中,ArrayList底层基于一个Object[]数组来维护数据。 1.2ArrayList优缺点 缺点: 容量受限时,需要进行数组扩容,进行元素拷贝会影响性能 频繁删除和往中间插入元素时,产生元素挪动,也
阅读全文