2010-10-19 4 views
1

У меня есть NSArray неизвестных предметов. Я знаю, что всегда будет больше 10 предметов.игнорируя ряд предметов из nsarray

Я хотел бы назначить все, кроме первых 10 предметов, на NSString.

Что-то вроде:

NSString *itemString = (NSString*)[itemArray StartingIndex:10]; 

Есть простой эффективный способ без итерации для достижения этой цели?

Спасибо!

+1

Что означает «назначение элементов NSString»? – Chuck

ответ

0

Массив, скорее всего, повторяется для вас, но вы можете сделать это:

NSRange allButFirstTen = NSMakeRange(10, [itemArray count] - 10); 
NSString *itemStrings[allButFirstTen.count]; 
[itemArray getObjects:itemStrings range:allButFirstTen]; 
/* |itemStrings| is now an array of NSString pointers 
* corresponding to all but the first 10 items of |itemArray|. */ 
NSString *firstString = itemStrings[0]; 

Это возможно, что вы имеете в виду, что вы хотите СЦЕПИТЬ каждый элемент массива, кроме первых десяти в одиночная строка. В этом случае вам нужно будет выполнить свою собственную итерацию для выполнения конкатенации.

+1

спасибо за быстрый ответ! В итоге я использовал вариацию вашего ответа: inputString = (NSString *) [[part subarrayWithRange: NSMakeRange (15, [parts count] -15)] componentsJoinedByString: @ ","]; – Abbacore

Смежные вопросы