java 集合如何表示
Java 集合框架概述
Java 集合框架(Java Collections Framework)是一组用于存储、操作和管理数据的接口和类,位于 java.util 包中。核心接口包括 Collection、List、Set、Queue 和 Map,每种接口有不同的实现类。
常用集合接口及实现类
1. List(有序、可重复)
ArrayList:基于动态数组,适合随机访问。LinkedList:基于双向链表,适合频繁插入/删除。Vector:线程安全的动态数组(已过时,推荐CopyOnWriteArrayList)。
List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
2. Set(无序、不可重复)
HashSet:基于哈希表,快速查找。LinkedHashSet:保留插入顺序的HashSet。TreeSet:基于红黑树,元素按自然顺序或自定义顺序排序。
Set<String> set = new HashSet<>();
set.add("A");
set.add("B");
3. Queue(队列)
LinkedList:可作为普通队列或双端队列。PriorityQueue:优先级队列(堆实现)。
Queue<String> queue = new LinkedList<>();
queue.offer("A");
queue.poll();
4. Map(键值对)

HashMap:基于哈希表,键无序。LinkedHashMap:保留插入顺序或访问顺序。TreeMap:基于红黑树,键按自然顺序或自定义顺序排序。
Map<String, Integer> map = new HashMap<>();
map.put("Key", 1);
map.get("Key");
集合的通用操作
- 添加元素:
add()(List/Set)、put()(Map)。 - 删除元素:
remove()。 - 遍历集合:
- 增强
for循环:for (String item : list) { ... } - 迭代器(
Iterator):Iterator<String> it = list.iterator(); while (it.hasNext()) { ... }
- 增强
注意事项
- 线程安全:默认集合类非线程安全。多线程环境下可使用
Collections.synchronizedList()或并发包(如ConcurrentHashMap)。 - 性能选择:
- 频繁查询用
ArrayList或HashSet。 - 频繁增删用
LinkedList。
- 频繁查询用
- 不可变集合:Java 9+ 支持
List.of()、Set.of()创建不可变集合。
List<String> immutableList = List.of("A", "B");






