StringBuilder和StringBuffer怎么完成字符串拼接的,怎么完成扩容的?
考察说明
考察对Java可变字符串实现原理的理解,包括拼接机制和扩容策略
回答思路
- 说明两者都继承自AbstractStringBuilder,通过字符数组存储内容
- 解释拼接时先检查容量并扩容,再复制字符到数组尾部,最后更新count
- 说明默认容量为16,扩容策略为原容量乘以2再加2,若仍不足则扩容到所需最小容量
- 对比StringBuilder与StringBuffer在线程安全性上的区别(非同步与同步方法)
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。