Android / Java Добавить строку + int - PullRequest
5 голосов
/ 05 июня 2010

У меня есть вопрос, как лучше всего добавить целые и строки для создания новой строки? В инструменте отладки выделения я вижу слишком много выделений, если использую оператор +.

Но я пробовал также с StringBuffer, и все еще слишком много выделений.

Кто-нибудь может мне помочь?

Спасибо

Ответы [ 2 ]

13 голосов
/ 05 июня 2010

Используйте StringBuilder или StringBuffer, но с достаточной начальной емкостью, чтобы избежать перераспределения. Емкость по умолчанию равна 16, поэтому, как только вы превысите ее, данные должны быть скопированы в новое место большего размера. Используйте append, а не +.

int integer = 5;

StringBuilder s = new StringBuilder(100);
s.append("something");
s.append(integer);
s.append("more text");

Выделит 100 слотов авансом.

Ссылка: http://developer.android.com/reference/java/lang/StringBuilder.html

0 голосов
/ 05 июня 2010

Вы указали, что вам нужно создать «новую строку», если вы создаете больше объектов, чем это, вы сможете оптимизировать их.

Примечание: может быть возможно удалить все распределение, но только передав StringBuilder или что-то подобное в течение всей жизни созданной вами строки. Это может быть или не быть простым в зависимости от того, как вы его используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...