互联网/IT行业面试题更新 2026-08-05

在高并发场景下,你会在 Java 的 StringBuffer 和 StringBuilder 之间选择哪个?为什么?

联想前端/移动开发互联网/IT技术原理方案权衡Java

考察说明

考察对线程安全类内部实现与并发成本的掌握,以及根据场景权衡取舍的能力

回答思路

  1. 正确识别 StringBuffer 的方法加 synchronized 而线程安全、StringBuilder 非线程安全
  2. 理解 StringBuffer 锁竞争带来的性能损耗,而 StringBuilder 无锁但需自身保证线程安全
  3. 能结合高并发实际需求分析:若线程安全必需且竞争不高可用 StringBuffer,否则推荐无共享或自同步
  4. 说明只要局部变量或不同线程独享,StringBuilder 更优,反之需外部同步或选 StringBuffer
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。