【问题标题】:IOS get 10 object from MutableArray [duplicate]IOS从MutableArray中获取10个对象[重复]
【发布时间】:2025-12-12 17:25:01
【问题描述】:

我有一个NSMutableArray *allObject,我的allObject 里面有 22 个对象。

现在我想在单击“更多”按钮时获得 10 个对象。

我正在使用:

NSArray *arrrTemp = [arrObject subarrayWithRange:NSMakeRange(from_index, 10)];

第一,我从allObject得到了10个对象

第二,我从allObject得到了10个下一个对象

没关系。

但是,第三个:它是崩溃应用程序。我认为subarrayWithRange:NSMakeRange(from_index, 10) ---> 10 是问题。

我该如何解决这个问题?

【问题讨论】:

  • 您不能在 NSMakeRange 中硬编码 10 的长度。您需要检查剩余的对象数量。
  • 我的 allObject 有 22 个对象,我正在使用 subarrayWithRange 来 arrrTemp,如何检查还剩下多少个对象。

标签: ios objective-c nsarray


【解决方案1】:

您需要检查是否至少还剩下 10 个对象。

NSInteger length = MIN(10, arrObject.count - from_index);
NSRange range = NSMakeRange(from_index, length);
NSArray *arrrTemp = [arrObject subarrayWithRange:range];

【讨论】: