既然ConcurrentHashMap是线程安全的,是否可以在所有代码中都改为使用ConcurrentHashMap而不使用HashMap?
考察说明
考察对并发容器与常规容器适用场景、性能特性与语义差异的理解
回答思路
- 说明ConcurrentHashMap虽线程安全但性能上有额外开销
- 指出线程安全仅指并发安全,不保证业务操作的原子性或迭代语义
- 强调HashMap在单线程场景下读写性能更优且无同步开销
- 讨论使用场景:并发写入需安全用CHM,单线程或局部变量用HashMap
- 提及CHM不支持键值对为null,与HashMap用法不同
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。