Java集合框架是用于存储、检索和操作数据的一组类和接口。
接口:
Collection接口:
Collection是集合框架的根接口,定义了一组通用的方法,用于操作集合中的元素。
子接口包括List、Set和Queue。
List接口:
List是有序可重复的集合,可以根据索引访问元素。
常见的实现类包括ArrayList、LinkedList、Vector。
Set接口:
Set是无序不重复的集合,不允许包含相同的元素。
常见的实现类包括HashSet、LinkedHashSet、TreeSet。
Map接口:
Map是一种键值对的集合,每个键对应一个值。
常见的实现类包括HashMap、LinkedHashMap、TreeMap。
Queue接口:
Queue表示一个先进先出(FIFO)的队列。
常见的实现类包括LinkedList、PriorityQueue。
Deque接口:
Deque(Double Ended Queue)是一个双端队列,可以在两端进行插入和删除操作。
常见的实现类包括ArrayDeque、LinkedList。
类:
ArrayList类:
ArrayList是List接口的动态数组实现,可以动态增长和缩小。
适用于随机访问和频繁修改操作。
LinkedList类:
LinkedList是List和Deque接口的双向链表实现。
适用于插入、删除操作频繁的场景。
HashSet类:
HashSet是Set接口的散列集合实现,基于哈希表。
适用于无序、唯一的元素集合。
HashMap类:
HashMap是Map接口的散列映射实现,基于哈希表。
适用于键值对存储,提供高效的查找和插入操作。
TreeSet类:
TreeSet是Set接口的红黑树实现,元素有序。
适用于有序、唯一的元素集合。
TreeMap类:
TreeMap是Map接口的红黑树实现,键有序。
适用于有序的键值对存储。
PriorityQueue类:
PriorityQueue是Queue接口的优先队列实现。
适用于按照一定优先级访问元素的场景。