集合
Java集合
集合框架是为表示和操作集合而规定的一种统一的标准体系结构
接口:表示集合的抽象数据类型
实现:集合框架中接口的具体实现
算法:在实现了某个集合框架中的接口的对象身上完成某种有用的计算方法
Java集合框架的三大类接口
Collection包含:List和Set;
三大接口为:List、Set、Map
共同点:都是集合接口,实现存储多个对象
接口定义
Collection接口存储一组不唯一(允许重复)、无序的对象
Set接口继承Collection接口,存储一组唯一(你允许重复)、无序的对象
List接口继承Collection接口,存储一组不唯一,有序的对象
Mao接口存储一组成对的键-值对象,提供key(键)到值(value)的映射
Iterator接口负责定义访问和遍历元素的接口
List接口
实现List接口常用类ArrayList和linkedList。他们都可以存储所有类型对象。包括null,允许重复。并且都是有序排列
ArrayList的有点便于遍历元素和随机访问元素的效率高
LinkedList才有链表存储方式,优点在于插入、删除元素时效率高
提供addFist()、addLast()、removeFist()、removeLast()等方法,可以在头部尾部插入或删除元素
List接口常用方法
方法名称 |
说明 |
Boolean add(object 0) |
在列表末尾顺序添加元素,起始索引位置为0 |
Void add(int i,object 0) |
在指定索引位置添加元素,原索引位置以及后面的元素依次后移 注意:新添加元素索引必须结余0和列表元素个数之间 |
Int size() |
返回列表中的元素个数 |
Object get(int i) |
返回指定索引位置处的元素 注意:使用前必须强转 |
Boolean contains(object o) |
判断列表中是够存在指定元素 |
Boolean remove(object o) |
从列表中删除元素 |
Object remove(int i) |
从列表中删除指定位置元素,起始索引位置从0开始 |
LinkedList的特殊方法
方法名称 |
说明 |
Void addFirst() |
在列表的首部添加元素 |
Void addLast() |
在列表的末尾添加元素 |
Object getFirst() |
返回列表第一元素 |
Object getLast() |
返回列表最后一个元素 |
Object removeFirst() |
删除并返回列表中的第一个元素 |
Object removeLast() |
删除并返回列表中的最后一个元素 |
Map接口
Map常用方法
方法名称 |
说明 |
Object put(object key,object value) |
以“键-值对”的方式存储 注意:键必须的唯一的,值可以重复如果键重复了后加入的“键-值队”覆盖原来的“键-值对” |
Object get(object key) |
根据键返回相关联的值,如不存在,返回null |
Object remove(object key) |
删除指定的键映射的“键-值对” |
Int size() |
返回元素个数 |
Set keyset() |
返回键的集合 |
Collection values() |
返回值的集合 |
Boolean containsKey(object key) |
若存在指定的键映射的“键-值对”,返回true |
Boolean isEmpty() |
若不存在键-值映射关系,则返回true |
Void clear() |
从此映射中移除所有映射关系 |
Iterator迭代器
专门实现集合的遍历
Collection接口的intertor()方法返回一个Iterator,然后通过Iterator接口的两个方法即可实现遍历
Boolean hasNext():判断是否存在另一个可访问的元素
Object next():返回访问的下一个元素