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。

相关推荐
你不是我我13 小时前
【Java 开发日记】HTTP3 性能更好,为什么内网微服务依然多用 HTTP2?HTTP2 内网优势是什么?
java·开发语言·微服务
雪碧聊技术13 小时前
大模型爆火!Java后端如何抓住Agent全栈开发的风口
java·大模型·agent·全栈开发
tjl521314_2114 小时前
04C++ 名称空间(Namespace)
开发语言·c++
赏金术士14 小时前
Kotlin 数据流与单双向绑定
android·开发语言·kotlin
逻辑驱动的ken15 小时前
Java高频面试场景题25
java·开发语言·深度学习·面试·职场和发展
AI人工智能+电脑小能手16 小时前
【大白话说Java面试题】【Java基础篇】第32题:Java的异常处理机制是什么
java·开发语言·后端·面试
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ17 小时前
通过java后端代码来实现给word内容补充格式文本内容控件,以及 设置控件的标记和标题
java·c#·word
無限進步D18 小时前
Java 面向对象高级 接口
java·开发语言
qq_4135020218 小时前
如何创建CDB公共用户_C##前缀强制规则与CONTAINER=ALL
jvm·数据库·python