概述——集合框架
Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类)。所有抽象出来的数据结构和操作(算法)统称为Java集合框架(Java Collection Framework)。Java程序员在具体应用时,不必考虑数据结构和算法实现细节,只需要用这些类创建出来一些对象,然后直接应用就可以了,这样就大大提高了编程效率。
为什么出现集合类?
- 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式。
集合类的特点:
- 集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。
Java集合框架包含的内容
- 接口
Collection: List , Set
Map
- 具体类
List : ArrayList , LinkedList
Set : HashSet , TreeSet
Map : HashMap , TreeMap
- 算法:
Collections
提供了对集合进行排序、遍历等多种算法实现。
集合框架的接口:
Collection:接口存储一组不唯一、无序的对象
List:接口存储一组不唯一,有序(插入顺序)的对象。有下标。
Set:接口存储一组唯一、无序的对象
Map:接口存储一组键值对象,提供 key (键)到 value (值) 的映射.
List接口的实现类
List: ArrayList ——– LinkedList
- ArrayList:实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高。—查看
- LinkedList:采用链表存储方式。插入、删除元素时效率比较高。 —后台
ArrayList集合类
List接口常用方法:
LinkedList采用链表存储方式
迭代器Iterator
如何变量List集合呢?
- 1:通过for循环和get()方法配合实现遍历
- 2:通过迭代器Iterator实现遍历
所有集合接口和类都没有提供相应遍历方法,而是由Iterator实现集合遍历。
Collection接口的iterate()方法返回一个Iterarot,然后通过Iterator接口的两个方法可实现遍历
boolean hasNext() :判断是否存在另一个可访问的元素
Object next():返回要访问的下一个元素。