String 和StringBuffer的区别
JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。
请看下面的例子:
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
String s = "";
long start = System.currentTimeMillis();
System.out.println("开始执行String重载...开始" + System.currentTimeMillis());
for (int i = 0; i < 10000; i++) {
s += i;
}
System.out.println("开始执行String重载...结束" + System.currentTimeMillis());
long end = System.currentTimeMillis();
System.out.println("结束-开始=" + (end-start));
StringBuffer buffer=new StringBuffer();
long bstart = System.currentTimeMillis();
System.out.println("开始执行String重载...开始" + System.currentTimeMillis());
for (int i = 0; i < 1000000; i++) {
buffer.append(i);
}
System.out.println("开始执行String重载...结束" + System.currentTimeMillis());
long bend = System.currentTimeMillis();
System.out.println("结束-开始=" + (bend-bstart));
}
}
输出结果:
开始执行String重载...开始1224137901968
开始执行String重载...结束1224137903218
结束-开始=1250
开始执行String重载...开始1224137903218
开始执行String重载...结束1224137903484
结束-开始=282