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