Java集合类
2015-06-12 14:09
471 查看
List、Set、Map是这个集合体系中最主要的三个接口。
其中List和Set继承自Collection接口。
Set不允许元素重复。HashSet和TreeSet是两个主要的实现类。
List有序且允许元素重复。ArrayList、LinkedList和Vector是三个主要的实现类。
Map也属于集合系统,但和Collection接口不同。Map是key对value的映射集合,其中key列就是一个集合。key不能重复,但是value可以重复。HashMap、TreeMap和Hashtable是三个主要的实现类。
SortedSet和SortedMap接口对元素按指定规则排序,SortedMap是对key列进行排序。
Vector和HashTable是线程同步的(synchronized)。性能上,ArrayList和HashMap分别比Vector和Hashtable要好
uml 空箭头 实线 是继承,空箭头虚线 是实现
来自为知笔记(Wiz)
其中List和Set继承自Collection接口。
Set不允许元素重复。HashSet和TreeSet是两个主要的实现类。
List有序且允许元素重复。ArrayList、LinkedList和Vector是三个主要的实现类。
Map也属于集合系统,但和Collection接口不同。Map是key对value的映射集合,其中key列就是一个集合。key不能重复,但是value可以重复。HashMap、TreeMap和Hashtable是三个主要的实现类。
SortedSet和SortedMap接口对元素按指定规则排序,SortedMap是对key列进行排序。
Vector和HashTable是线程同步的(synchronized)。性能上,ArrayList和HashMap分别比Vector和Hashtable要好
集合 | 性能 | 默认容量 | 空时的大小 | 10K 条目的开销 | 准确设置大小? | 扩展算法 |
---|---|---|---|---|---|---|
HashSet | O(1) | 16 | 144 | 360K | 否 | x2 |
HashMap | O(1) | 16 | 128 | 360K | 否 | x2 |
Hashtable | O(1) | 11 | 104 | 360K | 否 | x2+1 |
LinkedList | O(n) | 1 | 48 | 240K | 是 | +1 |
ArrayList | O(n) | 10 | 88 | 40K | 否 | x1.5 |
StringBuffer | O(1) | 16 | 72 | 24 | 否 | x2 |
来自为知笔记(Wiz)
相关文章推荐
- java解析json格式文件
- eclipse不能自动编译生成class文件的解决办法
- java日志框架,Log4j配置全攻略
- Spring MVC Controller 单元测试
- 用java语言实现事件委托模式
- 菜鸟java记录五
- elasticsearch 搭建-集群-java应用
- double类型输出,不以科学计数法方式输出
- 字符串反转的9种方法
- Spring Web Flow
- java中的内部类
- java中volatile关键字的含义
- Java实现图片裁剪缩放
- 第二十七篇 Java中 继 承 的一些另类思想。。。
- eclipse for php的XDebug设置方法
- spring异常
- javax.faces.view.facelets.ResourceResolver
- [5] MQTT,mosquitto,Eclipse Paho---MQTT消息格式分析概述
- extjs3.4+struts2上传文件却弹出下载框,下载的文件内容为json 返回的值的问题
- Eclipse debug 时要求 Edit Source Lookup Path 添加被调试项目的解决方案