String conSingles = ""; // один конг. одиночные символы в строку String appendSingles = "";
//Testing one char conc. and append
long before = System.currentTimeMillis(); //static method so no new
for(int i = 0; i <10; i++) {
for (int j = 0; j <70000; j++) {
conSingles += "j";
}
conSingles=""; //Clear string
}
long after = System.currentTimeMillis();
long before2 = System.currentTimeMillis(); //static method so no new
for(int i = 0; i <10; i++) {
StringBuilder appSingles = new StringBuilder(); //one to append single chars to
for (int j = 0; j < 75000000; j++) {
appSingles.append("j");
}
appendSingles = appSingles.toString();
appendSingles = "";
}
long after2 = System.currentTimeMillis();
long total = (after-before)/10;
long total2 = (after2-before2)/10;
Я сравниваю, сколько строк в одном символе я могу собрать в 1000 мсэ c, используя String concat против StringBuilder append. Я близок к 1000 мсе c, когда я запускаю l oop один раз, но когда я делаю это в среднем десять раз, я всегда получаю около 3-400 мсе c в среднем за раунд. Что в моем методе делает один раунд таким медленным по сравнению с 10 раундами?