两个方法效率计算代码如下:
public static void main(String[] args) { String s1 = "a"; String str1=""; String str2=""; /** * 计算concat所用时间 */ long str1Start = System.currentTimeMillis(); for (int i=0;i<10000;i++){ str1=str1.concat(s1); } long str1End = System.currentTimeMillis(); System.out.println("concat计算时间为:" + (str1End - str1Start)); /** * 计算+所用时间 */ long str2Start = System.currentTimeMillis(); for (int i=0;i<10000;i++){ str2=str2+s1; } long str2End = System.currentTimeMillis(); System.out.println("+计算时间为:" + (str2End - str2Start)); }
多次测试结果如下:
经计算平均值为:
contact:45.75
+:123.75
结论为:
concat的计算效率要比+的效率高
concat只适用于string和string的拼接,+适用于string和任何的拼接