【问题标题】:ignoring a range of items from an nsarray忽略 nsarray 中的一系列项目
【发布时间】:2011-04-27 06:07:19
【问题描述】:

我有一个NSArray 的未知项目。我知道总会有超过 10 个项目。

我想将除前 10 个项目之外的所有项目分配给 NSString

类似:

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

是否有一种无需迭代的简单有效方法来完成此任务?

谢谢!

【问题讨论】:

  • “将项目分配给 NSString”是什么意思?

标签: objective-c nsarray


【解决方案1】:

数组很可能会为您迭代,但您可以这样做:

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];

你的意思可能是你想连接数组中除了前十个之外的每个项目成一个字符串。在这种情况下,您将不得不进行自己的迭代来执行连接。

【讨论】:

  • 感谢您的快速响应!我最终使用了您的答案的变体: inputString = (NSString*)[[parts subarrayWithRange:NSMakeRange(15,[parts count]-15)] componentsJoinedByString:@","];
猜你喜欢
  • 2013-05-16
  • 1970-01-01
  • 1970-01-01
  • 2013-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-16
相关资源
最近更新 更多