在集合框架里,ArrayList 和 LinkedList 是使用最多的两种集合。ArrayList 和 ArrayBlockingQueue 一样,内部基于数组来存放元素,而 LinkedBlockingQueue 则和 LinkedList 一样,内部基于链表来存放元素。

LinkedBlockingQueue 实现了 BlockingQueue 接口,不同于 ArrayBlockingQueue,它如果不指定容量,容量默认为 Integer.MAX_VALUE,也就是无界队列

3.1 栈

3.1.1 栈的定义

作为一种限定性线性表,是只允许在同一端进行插入删除操作的线性表。

栈顶:通常将表中允许进行插入删除操作的一端称为栈顶 (Top),因此栈顶的当前位置是动态变化的,它由一个称为栈顶指针的位置指示器指示。

栈底:同时表的另一端被称为栈底 (Bottom)。

空栈:当栈中没有元素。