【java源码系列】Collection Framework

Hierarchy

1
2
3
4
5
6
7
8
9
10
11
12
13
Collection
├List
│├ArrayList
│├LinkedList
│└Vector
│ └Stack # 实现了栈的基本操作,由于涉及不够规范,目前极少使用。使用queue接口的相关实现可以完全取代它
├PriorityQueue
├Set
│├EnumSet
│├HashSet
│├LinkedHashSet
│├TreeSet
└ArrayDeque

http://www.cnblogs.com/skywang12345/p/3308498.html

compare

同步(线程安全) 随机访问 快速增删 存储空间 复杂度:增删改查,containsValue 其他语言
Array .. Yes O() 最小
ArrayList .. Yes O() .
LinkedList .. No O() . redis中的list采用双向链表实现
Vector ..
Stack
Queue

class Stack extends Vector
interface Queue extends Collection

实例场景

排队:秒杀。FIFO,
消息队列:
频繁插入:采用linkedList