List、Map、Set 接口在Java中的存取元素特点
List、Map 和 Set 是 Java 集合框架中的三个主要接口。它们之间的主要区别在于它们的存储特性和用途:
List:
- 存储特性:允许重复、有序(插入顺序)。
- 基本实现类:ArrayList、LinkedList、Vector(线程安全)。
- 用途:动态数组,适合频繁的插入和删除操作。
Map:
- 存储特性:键值对、无序。键唯一、值可重复。
- 基本实现类:HashMap、TreeMap、LinkedHashMap、Hashtable(线程安全)。
- 用途:键值对映射,适合快速查找和键值对访问。
Set:
- 存储特性:元素唯一、无序。
- 基本实现类:HashSet、LinkedHashSet、TreeSet。
- 用途:集合,适合快速查找和集合操作。
示例代码:
import java.util.*;
public class CollectionFeatures {
public static void main(String[] args) {
// List
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add(1, "c"); // 在指定位置插入
System.out.println(list); // 输出 [a, c, b]
// Map
Map<String, Integer> map = new HashMap<>();
map.put("key1", 1);
map.put("key2", 2);
System.out.println(map.get("key1")); // 输出 1
// Set
Set<String> set = new HashSet<>();
set.add("a");
set.add("b");
set.add("a"); // 重复元素不会添加
System.out.println(set); // 输出 [a, b]
}
}
评论已关闭