Java集合框架
集合框架
用于存储数据的容器,集合框架是为表示和操作集合而规定的一种统一的标准的体系结构
任何集合框架都包含三大块内容:
对外的接口、接口的实现和对集合运算的算法
接口
表示集合的抽象数据类型。接口允许我们操作集合时不必关注具体实现,从而达到“多态”。在面向对象编程语言中,接口通常用来形成规范。
实现
集合接口的具体实现,是重用性很高的数据结构。
算法
在一个实现了某个集合框架中的接口的对象身上完成某种有用的计算的方法,例如查找、排序等。这些算法通常是多态的,因为相同的方法可以在同一个接口被多个类实现时有不同的表现。事实上,算法是可复用的函数。
Iterator接口
boolean hasNext()
如果仍有元素可以迭代,则返回true。
E next()
返回迭代的下一个元素。
void remove()
从迭代器指向的 collection 中移除迭代器返回的最后一个元素。
ListIterator接口 继承于 Iterator接口
void add(E e)
将指定的元素插入到列表 (可选操作)。
boolean hasNext()
如果此列表迭代器在前进方向还有更多的元素时,返回 true。
boolean hasPrevious()
如果此列表迭代器在相反方向还有更多的元素时,返回 true。
E next()
返回列表中的下一个元素和光标的位置向后推进。
int nextIndex()
返回调用 next()后返回的元素索引。
E previous()
返回列表中的上一个元素和光标的位置向前移动。
int previousIndex()
返回调用previous() 后返回的元素索引 。
void remove()
删除列表中调用next()或previous()的返回最后一个元素。
void set(E e)
用指定元素替换列表中调用next()或previous()的返回最后一个元素。
Collection接口 继承于 Iterator接口
Collection一次存一个元素,是单列集合,下方两个继承于Collection的接口
List接口:
有序(元素存入集合的顺序和取出的顺序一致),元素都有索引。元素可以重复
接口实现类:ArrayList数组, LinkedList双向链表, Vector数组
Set接口:
无序(存入和取出顺序有可能不一致),不可以存储重复元素。必须保证元素唯一性
接口实现类:HashSet(哈希), TreeSet(红黑树),LinkedHashSet(链表哈希)
Queue接口:
队列
接口实现类:ArrayDeque
Map接口
常用实现类:
HashMap(哈希)、TreeMap(红黑)、HashTable(哈希)、LinkedHashMap、ConcurrentHashMap
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效