Подтвердить что ты не робот

В Java, как добавить строку более эффективно?

Я написал программу Java, в которой мне нужно добавить строку

" u13a2" к существующему "u1234 u12de u1386 ... u15a3".

Таким образом, строка становится длиннее и длиннее. Я обнаружил, что время, затрачиваемое на каждое добавление, также увеличивается дольше. Есть ли способ улучшить это до некоторой степени?

Реализация пришла мне в голову:

unicodeArray += " "+unicode;

или

unicodeArray = unicodeArray.concat(" "+unicode);

Они дали аналогичную производительность. Я думаю, что основной причиной, вызывающей эту плохую производительность, является особый тип String. Он создает новый объект для каждого присваивания. Если вы так думаете, значит ли это, что лучше использовать другой тип, например массив байтов?

4b9b3361

Ответ 1

Используйте класс StringBuilder. Это более эффективно в том, что вы пытаетесь сделать.

Ответ 2

Вы должны использовать класс StringBuilder.

StringBuilder stringBuilder = new StringBuilder();

stringBuilder.append("Some text");
stringBuilder.append("Some text");
stringBuilder.append("Some text");

String finalString = stringBuilder.toString();

Кроме того, пожалуйста, посетите:

Ответ 3

Для этого вы можете использовать StringBuffer или StringBuilder. Оба они предназначены для динамической обработки строк. StringBuffer является потокобезопасным, где StringBuilder не является.

Используйте StringBuffer в многопоточной среде. Но если это однопоточная StringBuilder, и она намного быстрее, чем StringBuffer.

Ответ 4

java.lang.StringBuilder. Используйте конструктор int для создания начального размера.

Ответ 5

- Каждый раз, когда вы добавляете или выполняете какие-либо изменения с ним, он создает новый объект String.

StringBuilder.), это будет эффективный способ сделать это.