您的位置:首页 > 产品设计 > UI/UE

Java 中字符串拼接 String 和 StringBuilder(StringBuffer)的使用

2015-12-29 23:32 851 查看
字符串拼接是个常用的功能,经常性使用String做字符串拼接,当拼接次数多的时候,使用String方法会消耗大量的性能和时间,因为每次String拼接时都会建立一个新的对象,随着拼接次数的增多,性能消耗、时间消耗会大量增加,这个时候应该使用StringBuilder方法。

public static void main(String[] args) {
try {
int count = 500;

long begin = System.currentTimeMillis();
testString(count);
long end = System.currentTimeMillis();
long time = end - begin;
System.out.println("String 方法拼接"+count+"次消耗时间:" + time + "毫秒");

begin = System.currentTimeMillis();
testStringBuilder(count);
end = System.currentTimeMillis();
time = end - begin;
System.out.println("StringBuilder 方法拼接"+count+"次消耗时间:" + time + "毫秒");

} catch (Exception e) {
e.printStackTrace();
}

}

private static String testString(int count) {
String result = "";

for (int i = 0; i < count; i++) {
result += "hello ";
}

return result;
}

private static String testStringBuilder(int count) {
StringBuilder sb = new StringBuilder();

for (int i = 0; i < count; i++) {
sb.append("hello");
}

return sb.toString();
}

运行结果:

String 方法拼接500次消耗时间:2毫秒
StringBuilder 方法拼接500次消耗时间:0毫秒


String 方法拼接50000次消耗时间:4973毫秒
StringBuilder 方法拼接50000次消耗时间:3毫秒
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息