Отличный способ построения длинных строк в цикле? - PullRequest
0 голосов
/ 30 августа 2009

У меня есть цикл, который создает довольно большую строку. С каждой итерацией к этой строке добавляется небольшой фрагмент строки, и эта строка становится все больше и больше. Есть ли что-то лучше, чем использовать NSMutableString и добавить к нему еще одну строку?

1 Ответ

2 голосов
/ 30 августа 2009

Проблема с добавлением к строке заключается в том, что, если строка предварительно не распределила все требуемое пространство, вам потребуется выполнить некоторые выделения и копирование, что приведет к производительности O (n ^ 2).

Более эффективный способ - создать NSArray из вашего списка строк, используя NSArray: componentsJoinedByString: . Присоединение к массиву происходит с постоянным временем, и, поскольку он знает длину полученной строки перед этим, он может предоставить вам окончательную строку за O (n) раз.

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