首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java的聚合框架

2012-12-22 
java的集合框架??? 什么是集合。通常情况下,把具有相同性质的一类东西,汇聚成一个整体,就可以称为集合,比如

java的集合框架

??? 什么是集合。通常情况下,把具有相同性质的一类东西,汇聚成一个整体,就可以称为集合,比如全体中国人,比如所有月份,等等。
??? 那么什么是集合框架。集合框架是为表示和操作集合而规定的一种统一的标准的体系结构。为什么要用这个概念呢?可以想个例子。如何存储每天新闻信息?要知道每天的新闻总数是不变的,太少会浪费空间,太多空间不足。还有如果让你做个教务系统,如何存储课程的代码和课程信息,并且能够通过代码便携地获得课程信息?要知道存的时候并不知道程序运行时需要多少对象。当然,并不是说我们用其他途径解决不了上面的问题。但是“集合框架”的提出,为这类问题的解决提供了标准又简单的途径。
??? 任何集合框架都包含三大块内容:对外的接口、接口的实现和对集合运算的算法。

?? java的聚合框架?

?

??? java中集合类定义主要是java.util.*包下,常用的集合定义了三大接口
分别是:Collection接口下的Set和List接口;Map接口
??? Collection接口存储一组不唯一,无序的对象
?????? List接口存储一组不唯一,有序(先进先出)的对象

??????????????图示:?????? java的聚合框架

?????? Set接口存储一组唯一,无序的对象

????????? 图示:?????????java的聚合框架

??? Map接口存储一组键值对,提供key到value的映射。

?

??????????? ?图示:???????????? java的聚合框架


??? List中有ArrayList与LinkedList,前者实现了长度可以变化的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高。后者采用链表存取的方式。插入和删除元素的效率较高。

?

?

方法总结:

java的聚合框架

?

???? java的聚合框架

?

?? 集合类的对比(很多情况下两者可以互换,但也有区别):
?? Vector和ArrayList:
????????? 前者线程安全,后者重速度轻安全,线程非安全
????????? 长度需增长时,前者默认增长一倍,后者增长50%。
?
?? Hashtable和HashMap:
????????? 前者继承自Dictionary类,后者实现Map接口
????????? 前者线程安全,后者线程非安全
????????? 前者不允许null值,后者允许。

热点排行