第二十一篇 Java StringBuffer 和 StringBuilder 类
栏目分类:java教程 发布日期:2019-09-21 浏览次数:次
第15章-Java StringBuffer 和 StringBuilder 类
上一节我们讲了StringBuffer类,这节我们就来讲讲StringBuilder类以及这二者之间的一些区别。
我们都知道当需要对字符串进行修改的时候就需要用到这两个类(StringBuffer类和StringBuilder类)而和String类有区别的是,StringBuffer与StringBuilder这两个类的对象能够被重复多次的修改而不产生新的未使用对象。
在Java 5中就又提出:StringBuilder类与StringBuffer类之间最大的不同在于StringBuilder类的方法不能同步访问(不是安全线程)。但是StringBuilder相对而言在速度上有着优势,所以我们大多数情况下还是使用StringBuilder类。如果对线程安全有要求的话,那么就必须使用StringBuffer类了。
下面来进行代码测试:
public class Test{
public static void main(String args[]){
StringBuffer sBuffer = new StringBuffer("my");
sBuffer.append("name");
sBuffer.append("is");
sBuffer.append("Bob");
System.out.println(sBuffer);
}
}
下面是StringBuffer类支持几种常用方法:
以下为String类方法类似的StringBuffer方法:
本章第15章就到此结束了,在这里对本节的重点知识做以下一个小结:
1. Java StringBuffer类与StringBuilder类最大的区别在于能否进行线程安全(即能否同步访问)。
2. StringBuilder比StringBuffer相对而言速度快,所以一般使用StringBuilder。
3. 在对有线程安全的情况下必须使用StringBuffer类。
上一节我们讲了StringBuffer类,这节我们就来讲讲StringBuilder类以及这二者之间的一些区别。
我们都知道当需要对字符串进行修改的时候就需要用到这两个类(StringBuffer类和StringBuilder类)而和String类有区别的是,StringBuffer与StringBuilder这两个类的对象能够被重复多次的修改而不产生新的未使用对象。
在Java 5中就又提出:StringBuilder类与StringBuffer类之间最大的不同在于StringBuilder类的方法不能同步访问(不是安全线程)。但是StringBuilder相对而言在速度上有着优势,所以我们大多数情况下还是使用StringBuilder类。如果对线程安全有要求的话,那么就必须使用StringBuffer类了。
下面来进行代码测试:
public class Test{
public static void main(String args[]){
StringBuffer sBuffer = new StringBuffer("my");
sBuffer.append("name");
sBuffer.append("is");
sBuffer.append("Bob");
System.out.println(sBuffer);
}
}
下面是StringBuffer类支持几种常用方法:
以下为String类方法类似的StringBuffer方法:
本章第15章就到此结束了,在这里对本节的重点知识做以下一个小结:
1. Java StringBuffer类与StringBuilder类最大的区别在于能否进行线程安全(即能否同步访问)。
2. StringBuilder比StringBuffer相对而言速度快,所以一般使用StringBuilder。
3. 在对有线程安全的情况下必须使用StringBuffer类。
本文由IT教学网整理发布,转载请注明出处:http://www.itjx.com/jiaocheng/java/463.html