集合体系
Collection 集合概述和使用
Collection单列集合(集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类)
1.迭代器,集合的专用遍历方式,Iterator
(1):Iterator中的常用方法
boolean hasNext(): 判断当前位置是否有元素可以被取出
E next(): 获取当前位置的元素,将迭代器对象移向下一个索引位置
2.增强for循环
作用:
实现Iterable接口的类才可以使用迭代器和增强for
简化数组和Collection集合的遍历
格式
for(集合/数组中元素的数据类型 变量名 : 集合/数组名) {
// 已经将当前遍历到的元素封装到变量中了,直接使用变量即可
}
List集合与set集合
1.不同点:
1.list集合特点:
(1):有序集合,有顺序的存和取
(2):可以有重复的元素出现
(3):有索引,可以通过索引访问并搜索元素
2.set集合特点
(1):不可以存储重复的元素
(2):无索引,不能使用普通for循环
(3):无序集合
2.list与set集合特有的方法
1.list集合特有的方法
(1):add 在集合指定位置插入指定的元素
(2):remove 删除指定索引处的元素,返回被删除的元素
(3):set 修改指定索引处的元素,返回被修改的元素
(4):get 返回指定索引处的元素
3.LinkedList与ArrayList
1.LinkedList
(1)可以操作头尾
(2)链表查询慢,增删快
2.ArrayList
(1)查询快,增删慢
(2)初始容量是10,1.5倍扩容
4.HashSet与TreeSet
(1)HashSet的特点
(1)底层数据结构是哈希表
(2)存取无序
(3)不可以存储重复元素
(4)没有索引,不能使用普通for循环遍历
(1)HashSet
1.1重写hashcode和equals方法来保证哈希表的唯一
1.2初始容量是16,当存储到16x0.75的下一个进行2倍扩容
(2)TreeSet
1.1可以对内容进行排序
两种排序方法
TreeSet():根据其元素的自然排序进行排序
TreeSet(Comparator comparator) :根据指定的比较器进行排序
1.2提供排序方法来保证红黑树的唯一性
Map集合
Map集合是双列集合
1.Map集合的特点
(1)键不可以重复,值可以重复
(2)键和值一一对应,通过一个键能找到对应的值
(3)Map<key,value>
1.Map特有方法
(1)put(k,v) 添加元素,当key存在时进行替换
(2)remove(Object key) 根据键删除键值对元素
(3).clear() 移除所有的键值对元素
(4) containsKey(Object key) 判断是否包含指定键
(5)containsValue(Object key) 判断是否包含指定值
(6)isEmpty() 判断是否为空
(7) size() 集合的长度
2.遍历方法
2.HashMap与TreeMap
1.HashMap与TreeMap相同特点
保证唯一的方式都是重写hashcode和equals方法
2.HashMap与TreeMap不相同点
(1)HashMap的底层是哈希表结构,TreeMap是红黑树
(2)TreeSet依赖自然排序或者比较器排序,对键进行排序