String,StringBuilder,StringBuffer效率比較
阿新 • • 發佈:2022-04-18
package com.test; import java.util.Date; public class Main { public static void main(String[] args) { long now = new Date().getTime(); String s1 = ""; int n = 100000; StringBuilder s2 = new StringBuilder(); StringBuffer s3 = new StringBuffer(); for (int i = 0; i < n; i++) { s1 += "."+i; } System.out.println("String使用的時間"+(System.currentTimeMillis()-now)/1000.0+"s"); long time1 = System.currentTimeMillis(); for (int i = 0; i < n; i++) { s2.append("."+i); } System.out.println("StringBuilder使用的時間"+(System.currentTimeMillis()-time1)/1000.0+"s"); long time2 = System.currentTimeMillis(); for (int i = 0; i < n; i++) { s3.append("."+i); } System.out.println("StringBuffer使用的時間"+(System.currentTimeMillis()-time2)/1000.0+"s"); } }
說實話有點被震驚到了,當迴圈次數到十萬的時候,String不是慢了一點罷點。