String和StringBuffer 和 StringBuilder 类的区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dz_hexiang/article/details/83893091

前言

String和StringBuffer 和 StringBuilder 类的区别

String

字符串,字符串是常量,它们的值在创建之后不能更改。

第二次赋值其实改变了引用地址了,区分对象和引用

StringBuffer

字符串缓冲区(StringBuffer)支持可变的字符串,是线程安全的可变字符序列。可将字符串缓冲区安全地用于多个线程。可以在必要时对这些方法进行同步

StringBuilder

字符串缓冲区(StringBuilder)支持可变的字符串,适用于单个线程,与StringBuffer的最大区别是StringBuilder线程不安全。该类被设计用作 StringBuffer 的一个简易替换,如果可能,建议优先采用该类,因为在大多数实现中,它比 StringBuffer 要快。

简单的字符串用String
频繁更改变换修改的用StringBuilder或者StringBuffer
考虑线程安全用StringBuffer
单线程StringBullder
高性能StringBullder

猜你喜欢

转载自blog.csdn.net/dz_hexiang/article/details/83893091