一、关于集合框架
在正常实现方法或者非常关注性能时,选择的不同
数据结构
会带来很大的差异。与现代数据结构类库的常见做法一样,Java集合类库也将
接口
(interface)与实现
(implementation)分离。
二、具体集合及作用
ArrayList:可以动态增长和缩减一个索引序列。(底层
数组
实现,查询快)LinkedList:可以在任何位置高效插入和删除一个有序序列。(底层
链表
实现,增删快)ArrayQueue:实现为循环数组的一个双端队列。
HashSet:没有重复元素的一个无序集合。
TreeSet:一个有序集。
EnumSet:一个包含枚举类型值的集。
LinkedHashSet:一个可以记住插入元素次序的集。
PriorityQueue:允许高效删除最小元素的一个集合。
HashMap:存储键/值关联的一个数据结构。
TreeMap:键有序的一个映射。
EnumMap:键属于枚举类型的一个映射。
LinkedHashMap:可以记住键/值添加次序的一个映射。
WeakHashMap:值不会在别处使用时就可以被垃圾回收的一个映射。
IdentityHashMap:用==而不是equals比较键的一个映射。
“ Map结尾的类实现了Map接口,其他类都实现了Collection接口。”
三、继承关系
- 接口关系:
- Collection类族:
- Map类族:
四、结束语
“-------怕什么真理无穷,进一寸有一寸的欢喜。”
微信公众号搜索:饺子泡牛奶。