概述
【Java集合类源码分析】Java集合框架介绍
Java集合是Java提供的工具包,位于java.util包下,包含了常用的数据结构:数组、链表、栈、队列、集合、哈希表等。学习Java集合框架主要可以划分为如下五个部分:List列表、Set集合、Map映射、迭代器(Iterator、Enumeration)、工具类(Arrays、Collections)。
Java集合类的整体框架图如下:
从图中可以看出,Java集合类主要分为两大类:Collection和Map。
1、Collection是List、Set等集合高度抽象出来的接口,它包含了这些集合的基本操作,主要包含List和Set两大分支。
1.1、List接口通常表示一个有序的列表(数组、链表、队列、栈等),其中的元素可以重复,常用的实现类有ArrayList和LinkedList。
1.2、Set接口通常表示一个不允许有重复元素的集合,其中的元素不允许重复(通过hashCode和equals函数保证),常用的实现类有HashSet和TreeSet。HashSet是通过Map中的HashMap实现的,TreeSet是通过Map中TreeMap实现的。TreeSet还实现了SortedSet接口,因此它是有序的集合(集合中的元素要实现Comparable接口,并覆写Compartor函数才行)。
1.3、抽象类AbstractCollection、AbstractList和AbstractSet分别实现了Collection、List和Set接口,这就是在Java集合框架中用的很多的适配器设计模式,用这些抽象类去实现接口,在抽象类中实现接口中的若干或全部方法,这样下面的一些类只需要直接继承该抽象类,并实现自己需要的方法即可,而不用实现接口中的全部抽象方法。
2、Map接口是一个映射接口,其中的每一个元素都是一个key-value键值对。同样抽象类AbstractMap通过适配器模式实现了Map接口中的大部分抽象方法,TreeMap、HashMap、WeakHashMap实现类通过继承AbstractMap来实现。另外,不常用的Hashtable类直接实现了Map接口,它和Vector都是JDK1.0就引入的集合类。
3、Iterator是遍历集合的迭代器(不能遍历Map,用来遍历Collection),Collection的实现类都实现了iterator()函数,它返回一个Iterator对象用来遍历集合,ListIterator专门用来遍历List。而Enumeration是JDK1.0引入的,作用与Iterator相同,但它的功能比Iterator少,它只能在Hashtable、Vector和Stack中使用。
4、Arrays和Collections是用来操作数组和集合的两个工具类。
最后
以上就是醉熏期待为你收集整理的【Java集合类源码分析】Java集合框架介绍【Java集合类源码分析】Java集合框架介绍的全部内容,希望文章能够帮你解决【Java集合类源码分析】Java集合框架介绍【Java集合类源码分析】Java集合框架介绍所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复