Java集合框架
1、概述
- java除了提供基本的数据类型支持外,还提供了对数据对象类型的存储框架,可以非常高效的,方便的操纵这些数据对象,并且能动态增长,集合可以用来存储、检索、操作、通信,它主要包含接口和实现类一些具体的操作方法。
- java的集合框架主要有两种,一种是集合(Collection),集合是存储一类元素的结合,它是最基本的容器接口,继承了Iterable接口。另一种是图,它存储了键值对的映射关系,通过键能得到值。
2、Collection
- Collection接口有三种子类型,分别为List,Set和Queue,由抽象类到具体的实现类,常用的有
1、List介绍
- List容器中的元素是有序可重复的,它能够控制每个元素的插入位置,用户还可以直接通过索引来进行访问。List的实现类还有LindedList,ArrayList,vector和stack.
2、Set介绍
- Set里面存储的元素都是不重复的,并且里面的元素是无序的
3、Queue介绍
- 队列继承了Collection接口,和List,Set是同一个级别的,只允许在一端进行插入操作,另一端进行删除操作。具有先进先出的特性
4、Map
- 在程序中用于管理映射关系
- map里面的key和value是一一对应的,并且不允许里面的key重复
- map里面最重要的有一个entry方法,里面定义了对key或者value的获取方法
4.1 HashMap
- HashMap是最常用的map,存储根据键的hashCode来进行存储,根据键可以直接获取值,访问速度很快。
- 遍历方式:遍历方式有根据keySet()值遍历和entrySet()键值进行遍历,还有迭代器iterator()的遍历方式。
- iterator()方法的遍历:
1 | # 使用keySet进行遍历 |
3、Iterator
- iterator其实就是遍历,提供的标准化遍历容器内所有对象的方法,在迭代过程中,使用者不需要了解集合的内部的结构。
- iterator主要有3个方法
1 | hasNext() //判断是否还有元素供迭代 |
4、泛型
- 泛型主要是为了解决代码被不同对象的类型重用的问题,在集合框架中有广泛的使用。
4.1 泛型类
1 | public class Pair<K, V> { |
4.2 泛型方法
1 | public Class A{ |
4.3 类型限定
- 需要限制类型时使用 extends