JavaJava 杂谈架构算法设计模式和编程理论

Java之Collection

2019-05-24  本文已影响0人  Jason_Sam
Collection接口继承树
  1. Collection接口介绍
  2. 常用Set原理分析
  3. 常用Queue原理分析
  4. 常用List原理分析

Collection接口介绍

API 描述
add(Object o) 增加元素
addAll(Collection c) 增加集合中所有元素
clean() 清空集合
contains(Object o) 是否包含元素
containsAll(Collection c) 是否包含c中所有元素
iterator 返回一个Iterator对象
remove(Object o) 删除元素o
removeAll(Collection c) 删除集合c中包含的所有元素
retainAll(Collection c) 相当于求与c的交集
removeIf(lambda) Lambda表达式去除符合要求的元素
size() 返回元素个数
toArray() 把集合转换为数组

常用Collection区别

有序性 线程安全 适用范围 性能 原理
HashSet 无序 不安全 元素唯一 hashcode
LinkedHashSet 有序 不安全 元素插入顺序有序且唯一 双向链表+ hashcode
TreeSet 有序 不安全 元素按自然(或自定义)排序顺序且唯一 二叉树+ hashcode
ArrayList 有序 不安全 随机访问频繁 动态数组
LinkedList 有序 不安全 频繁增删、栈实现 双向链表
Vector 有序 安全 多线程集合存储 动态数组
PriorityQueue 有序 不安全 按队列元素大小排序(也可自定义排序) 小顶堆

常用Set原理分析

Set s = Collections.synchronizedSet(new HashSet(...));

常用Queue原理分析

常用List原理分析

上一篇 下一篇

猜你喜欢

热点阅读