Java 容器
peabits
Who cases...
展开
-
Java 容器概览
文章目录1. 概览1.1 CollectionSetListQueue1.2 Map Java 容器 1. 概览 容器主要包括 Collection 和 Map 两种,Collection 存储着对象的集合,而 Map 存储着键值对(两个对象)的映射表。 1.1 Collection Set TreeSet:基于红黑树实现,支持有序性操作,例如根据一个范围查找元素的操作。但是查找效率不如Hash...原创 2019-07-30 20:43:46 · 159 阅读 · 0 评论 -
Java 容器 ArrayList
文章目录2. ArrayList2.1 概览2.2 扩容2.3 删除元素2.4 Fail-Fast2.5 序列化 Java 容器 2. ArrayList 2.1 概览 因为 ArrayList 是基于数组实现的,所以支持快速随机访问。RandomAccess 接口标识着该类支持快速随机访问。 public class ArrayList<E> extends AbstractList...原创 2019-07-30 21:10:42 · 109 阅读 · 0 评论 -
Java 容器 Vector
文章目录3. Vector3.1 同步3.2 与 ArrayList 的比较3.3 替代方案 Java 容器 3. Vector 3.1 同步 它的实现与 ArrayList 类似,但是使用了 synchronized 进行同步。 public synchronized boolean add(E e) { modCount++; ensureCapacityHelper(elem...原创 2019-07-30 21:22:13 · 164 阅读 · 0 评论 -
Java 容器 CopyOnWriteArrayList
文章目录4. CopyOnWriteArrayList4.1 读写分离4.2 适用场景 Java 容器 4. CopyOnWriteArrayList 4.1 读写分离 写操作在一个复制的数组上进行,读操作还是在原始数组中进行,读写分离,互不影响。 写操作需要加锁,防止并发写入时导致写入数据丢失。 写操作结束之后需要把原始数组指向新的复制数组。 4.2 适用场景 CopyOnWriteArrayL...原创 2019-07-30 21:47:36 · 125 阅读 · 0 评论 -
Java 容器 LinkedList
文章目录5. LinkedList5.1 概览5.2 与 ArrayList 的比较 Java 容器 5. LinkedList 5.1 概览 基于双向链表实现,使用 Node 存储链表节点信息。 private static class Node<E> { E item; Node<E> next; Node<E> prev; ...原创 2019-07-31 19:52:49 · 105 阅读 · 0 评论