LinkedHashMap与TreeMap对比 | AI生成和翻译

Home 2025.04

很好的问题!LinkedHashMapTreeMap 都是 Java 中 Map 接口的实现,但它们具有不同的排序策略,并且使用不同的底层数据结构

🌳 TreeMap

🔗 LinkedHashMap


✅ 迭代器顺序

是的,它们的迭代器顺序确实不同

映射类型 迭代器顺序
TreeMap 按键排序
LinkedHashMap 插入顺序(或访问顺序)

🔍 代码示例

Map<String, Integer> treeMap = new TreeMap<>();
Map<String, Integer> linkedMap = new LinkedHashMap<>();

treeMap.put("banana", 2);
treeMap.put("apple", 3);
treeMap.put("cherry", 1);

linkedMap.put("banana", 2);
linkedMap.put("apple", 3);
linkedMap.put("cherry", 1);

System.out.println("TreeMap:");
for (String key : treeMap.keySet()) {
    System.out.println(key);
}

System.out.println("LinkedHashMap:");
for (String key : linkedMap.keySet()) {
    System.out.println(key);
}

输出结果:

TreeMap:
apple
banana
cherry

LinkedHashMap:
banana
apple
cherry

如果您需要更详细的性能分析或内存使用情况说明,请随时告诉我。


Back Donate