|- Collection集合(接口): 单列集合。一次存储一个元素
//常用方法:
add(Object obj)
remove(Object obj)
int size() //获取集合大小
boolean contains(Object obj) //检测集合中是否包含obj元素
clear() //清空集合
Iterator iterator() //获取当前集合的迭代器对象
|-- List集合(接口): 有索引、可以存储重复元素、存取元素顺序有序
|-- ArrayList集合(类):底层使用数组结构
特点: 查询效率高、添加删除元素效率低
特有方法:
add(int index , Object obj) //添加
remove(int index)//删除
set(int index , Object obj)//修改
get(int index) //查询
|-- LinkedList集合(类):底层使用链表结构(链表头、链表尾)
特点: 添加删除元素效率高、查询效率低
特有方法:
addFirst(Object obj)
addLast(Object obj)
removeFirst()
removeLast()
getFirst()
getLast()
|-- Set集合(接口): 没有索引、不能存储重复元素、存取元素顺序无序
Set集合下的方法全部来自Collection集合
|-- HashSet集合(类): 底层使用哈希表结构
底层是借用HashMap集合实现
注意事项:当存储自定义类型元素时,要保证元素的唯一性,需要在自定义类中重写:
hashCode()、equals()方法
|-- LinkedHashSet集合(类): 底层使用链表+哈希表结构
底层是借用LinkedHashMap集合实现
存取元素的顺序一致
|-- TreeSet集合(类): 底层使用使用红黑树
底层借用TreeMap集合实现
存储的元素会按照特定的规则进行排序:自然排序、比较器排序
|- Map集合(接口): 双列集合。一次存储两个元素。 双列集合=Set集合(存Key)+Collection集合(存Value)
常用方法:
Object put(Object key , Object value)//添加、修改
Object remove(Object key)//删除
Object get(Object key)//获取
boolean containsKey(Object key)//判断key元素在map集合中是否存在
boolean containsValue(Object value)//判断value元素在map集合中是否存在
int size()
Set keySet() //获取所有的Key元素
Set entrySet()//获取所有的键值对元素
|-- HashMap集合(类): 底层使用哈希表结构
注意事项:当Key元素存储自定义类型时,如要求唯一性,自定义类中必须重写hashCode和equals
|-- LinkedHashMap集合(类): 底层使用链表+哈希表结构
存取元素顺序一致
|-- TreeMap集合(类): 底层使用红黑树结构
存储的Key元素,会按照特定规则进行排序。 自然排序、比较器
//相关接口
Iterator接口:迭代器
每一个集合对象中都一个方法:iterator(),可以获取迭代器对象
作用:遍历集合
常用方法: hasNext()、next()
Comparable接口:自然排序
当使用自然排序时,要求元素自身必须实现Comparable接口,重写compareTo方法
Comparator接口:比较器
1、创建一个子类,实现Comparator接口,重写compare方法
2、匿名内部类
Collection 和 Map 区别和详细解释 (特有方法)
最新推荐文章于 2024-01-22 05:10:11 发布