Java:String、StringBuffer和StringBuilder的区别

参考:

https://blog.csdn.net/kingzone_2008/article/details/9220691

https://blog.csdn.net/itchuxuezhe_yang/article/details/89966303

String 常量字符串,每次修改都是会新创建一个字符串,当要频繁修改字符串的时候不建议使用 String

StringBuilder 和 StringBuffer 可变的字符串

StringBuilder 效率比较高,不是线程安全的,多线程时会有问题。

StringBuffer 是线程安全的,效率比较低,适合多线程,底层所有的公共方法都使用了 synchronized 保证同步,所有效率比低。

技术选型:

大多数业务场景中,不变的字符串适合 使用 String

可变的单线程大量字符串使用 StringBuilder (小型项目,大多数场景下不太确定是否多线程时还是建议使用StringBuffer)

多线程场景下使用 StringBuffer。

相关推荐
那个失眠的夜14 分钟前
AspectJ
java·开发语言·数据库·spring
杨凯凡20 分钟前
【014】基本类型与包装类:缓存、相等性、NPE
java·数据结构·缓存
网域小星球33 分钟前
C++ 从 0 入门(四)|继承、多态、this 指针、深浅拷贝(C++ 面试终极收官)
开发语言·c++·面试·多态·继承·this指针·深浅拷贝
weixin_5806140044 分钟前
如何防止SQL注入利用存储过程_确保存储过程不拼字符串.txt
jvm·数据库·python
emmjng3691 小时前
使用飞算JavaAI实现在线图书借阅平台
java
CoderYanger1 小时前
14届蓝桥杯省赛Java A 组Q1~Q3
java·开发语言·线性代数·算法·职场和发展·蓝桥杯
钮钴禄·爱因斯晨1 小时前
他到底喜欢我吗?赛博塔罗Java+前端实现,一键解答!
java·开发语言·前端·javascript·css·html
词元Max1 小时前
Java 转 AI Agent 开发学习路线(2026年3月最新版)
java·人工智能·学习
亚历克斯神1 小时前
Java 云原生开发最佳实践:构建现代化应用
java·spring·微服务
布说在见1 小时前
企业级 Java 登录注册系统构建指南(附核心代码与配置)
java·开发语言