StringBuffer 类:
StringBuffer 类是线程安全的,适用于多线程环境。由于它是线程安全的,相对于 StringBuilder,它的性能稍差一些。
创建 StringBuffer 对象:
StringBuffer buffer = new StringBuffer();
添加/追加字符串:
buffer.append("Hello");
buffer.append(" ");
buffer.append("Java");
或者使用链式操作:
buffer.append("Hello").append(" ").append("Java");
插入字符串:
buffer.insert(6, "Beautiful ");
删除字符:
buffer.delete(6, 16);
反转字符串:
buffer.reverse();
获取字符串:
String result = buffer.toString();
StringBuilder 类:
StringBuilder 类与 StringBuffer 类相似,但是不是线程安全的。相对于 StringBuffer,StringBuilder 的性能更好,适用于单线程环境。
创建 StringBuilder 对象:
StringBuilder builder = new StringBuilder();
添加/追加字符串:
builder.append("Hello");
builder.append(" ");
builder.append("Java");
或者使用链式操作:
builder.append("Hello").append(" ").append("Java");
插入字符串:
builder.insert(6, "Beautiful ");
删除字符:
builder.delete(6, 16);
反转字符串:
builder.reverse();
获取字符串:
String result = builder.toString();
选择 StringBuffer 还是 StringBuilder:
- 如果在多线程环境中使用,或者需要线程安全性,则选择 StringBuffer。
- 如果在单线程环境中使用,且不需要线程安全性,则选择 StringBuilder,因为它的性能更好。
这两个类提供了与 String 类似的方法,使得字符串的操作更加灵活。需要注意的是,与 String 不同,StringBuffer 和 StringBuilder 是可变的,允许直接修改字符串内容。
转载请注明出处:http://www.zyzy.cn/article/detail/415/Java