Java StringBuffer 和 StringBuilder 类
2017-11-05 15:47
369 查看
当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类, 和 String 类不同的是,
StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。 由于
StringBuilder 相较于 StringBuffer 有速度优势, 所以多数情况下建议使用 StringBuilder
类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。
结果:
public StringBuffer append(String s)
将指定的字符串追加到此字符序列。
public StringBuffer reverse()
将此字符序列用其反转形式取代。
public delete(int start, int end)
移除此序列的子字符串中的字符。
public insert(int offset, int i)
将 int 参数的字符串表示形式插入此序列中。
replace(int start, int end, String str)
使用给定 String 中的字符替换此序列的子字符串中的字符。
concat() 方法,那也是把字符串拼接起来并重新创建一个对象,把拼接后的 String 的值赋给新创建的对象,而
StringBuffer 的长度是可变的,调用 StringBuffer 的 append 方法,来改变 StringBuffer 的长度。
StringBuffer 线程安全,StringBuilder 线程不安全。 StringBuilder 速递快。
StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。 由于
StringBuilder 相较于 StringBuffer 有速度优势, 所以多数情况下建议使用 StringBuilder
类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。
public class Test{ public static void main(String args[]){ StringBuffer sBuffer = new StringBuffer("菜鸟教程官网:"); sBuffer.append("www"); sBuffer.append(".runoob"); sBuffer.append(".com"); System.out.println(sBuffer); } }
结果:
菜鸟教程官网:www.runoob.com
StringBuffer 方法
StringBuffer 类支持的主要方法:public StringBuffer append(String s)
将指定的字符串追加到此字符序列。
public StringBuffer reverse()
将此字符序列用其反转形式取代。
public delete(int start, int end)
移除此序列的子字符串中的字符。
public insert(int offset, int i)
将 int 参数的字符串表示形式插入此序列中。
replace(int start, int end, String str)
使用给定 String 中的字符替换此序列的子字符串中的字符。
总结:
Java 中 StringBuffer 和 String 是有一定的区别的,首先,String 长度是不可变的,就算调用 String 的concat() 方法,那也是把字符串拼接起来并重新创建一个对象,把拼接后的 String 的值赋给新创建的对象,而
StringBuffer 的长度是可变的,调用 StringBuffer 的 append 方法,来改变 StringBuffer 的长度。
StringBuffer 线程安全,StringBuilder 线程不安全。 StringBuilder 速递快。
相关文章推荐
- Java StringBuffer 和 StringBuilder 类
- Java探索之旅(10)——数组线性表ArrayList和字符串生成器StringBuffer/StringBuilder
- Java StringBuffer 和 StringBuilder 类
- Java StringBuffer & StringBuilder 源码分析
- Java千百问_06数据结构(021)_StringBuffer/StringBuilder有什么区别
- Java基础(四):Java Number & Math 类、Character 类、String 类、StringBuffer & StringBuilder 类
- java中String StringBuffer 与 StringBuilder 的区别
- java中String StringBuffer 与 StringBuilder 的区别
- java 基础知识——String & StringBuffer & StringBuilder
- java-String StringBuffer和StringBuilder的区别
- Java StringBuffer和StringBuilder的区别
- 【编程语言】java--StringBuffer&&StringBuilder
- Java String,StringBuilder和StringBuffer的区别 StringBuilder > StringBuffer> String
- java StringBuffer,StringBuilder,String自身连接效率对比
- Java核心API -- 2(String、StringBuilder、StringBuffer)
- Java StringBuffer 和 StringBuilder 类
- Java的String&StringBuffer&StringBuilder
- JAVA学习.String不变性&StringBuffer&StringBuilder
- Java StringBuffer 和 StringBuilder 类
- 黑马程序员 知识点总结-Java String&StringBuffer&StringBuilder