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。

相关推荐
名字忘了取了1 分钟前
定时任务线程池-scheduleAtFixedRate和scheduleWithFixedDelay
java
木井巳2 分钟前
【JavaEE】Spring Boot 快速上手
java·spring boot·后端·java-ee
吴梓穆3 分钟前
UE5 c++打印日志
开发语言·c++·ue5
不会写DN3 分钟前
php 如何使用mysqli连接mysql
开发语言·mysql·php
赫瑞3 分钟前
Java中的进阶最长上升子序列——LIS
java·开发语言
Amour恋空4 分钟前
SpringBoot使用SpringAi完成简单智能助手2.0
java·spring boot·后端
吴梓穆4 分钟前
UE5 C++ 绘制图形调试宏
开发语言·c++·ue5
skywalk81635 分钟前
windows10安装python3.14
开发语言·python
2501_908329855 分钟前
C++中的装饰器模式
开发语言·c++·算法
额1295 分钟前
Ubuntu 反向代理/负载均衡 centos7/8 tomcat服务更改
java·centos·tomcat