ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

集合框架

2020-06-07 10:54:43  阅读:197  来源: 互联网

标签:Map Iterator 框架 实现 Collection 接口 集合


一、概念

用于存储数据的容器,集合区别于数组,集合主要用于存放对象,并且长度可变,而数组一旦初始化,其长度不能发生改变,灵活性较差。

二、集合关系图谱

 

解释说明:

1. 集合类位于java.util包中,集合类主要有两个父级接口Collection和Map派生,二者的顶级父类均为Object,两个父级接口派生出了一些接口和实现类。

2. 图谱中共有6个接口,由短虚线表示,是集合框架的基础。

3. 图谱中共有5个抽象类,由长虚线表示,可扩展为自定义集合类。

4. 实现类:8个实现类(实线表示),对接口的具体实现。

三、细节分析

 

 

 

1、Collection接口

其是一个高度抽象出来的集合接口,它包含的集合的基本操作和属性,主要包括List和Set两大分支。

· List是一个有序的队列,每个元素都有其特有的索引,且元素的索引值从0开始。List的实现类包含ArrayList、LinkedList、Vector、Stack。

· Set是一个无序的元素集合,且内部不允许有重复元素。Set的实现类有HashSet和TreeSet,HashSet依赖于HashMap,它实际上是通过HashMap实现的;TreeSet依赖于TreeMap,它实际上是通过TreeMap实现的。

2、Map是一个映射接口,保存为key-value键值对。AbstractMap是个抽象类,它实现了Map接口中的大部分API。而HashMap,TreeMap,WeakHashMap都是继承于AbstractMap。Hashtable虽然继承于Dictionary,但它实现了Map接口。

3、Iterator迭代器为遍历集合的工具类,Collection依赖于Iterator,Collection实现类都需要实现iterator()函数,返回Iterator对象,ListIterator是为专门遍历List集合而存在。 

 

 

4、Enumeration与Iterator类似,其作用也是为了遍历集合。但是其功能要比Iterator少很多,

只能在Hashtable, Vector, Stack中使用。

5、Arrays和Collections为操作集合的两个工具类。

 

 

标签:Map,Iterator,框架,实现,Collection,接口,集合
来源: https://www.cnblogs.com/wuhao-0206/p/13059792.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有