objective-c - 从另一个数组添加对象

标签 objective-c arrays xcode nsmutablearray

我有以下代码:

for (int i = 1; i <= [nmaSpread count];)
{
    [nmaUserName addObjectsFromArray:[nmaSpread objectAtIndex:i]];
    [nmaSpread removeObjectAtIndex:i];
    i += 2;
}

我已经声明了所有的变量为全局变量,nmaUserName和nmaSpread都是NSMutableArrays,并且已经在viewDidLoad中分配了。

我想将 nmaSpread 中的所有奇数对象存储到 nmaUsername 中,然后删除 nmaSpread 中的事件对象。

然而,它总是因这个错误而崩溃:

[NSMutableArray addObjectsFromArray:]: array argument is not an NSArray 2011-12-11 21:08:55.123 appName[15671:f803] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[NSMutableArray addObjectsFromArray:]: array argument is not an NSArray'

最佳答案

nmaSpread 本身是一个 NSMutableArray,但看起来它包含的对象不是。当您执行 [nmaSpread objectAtIndex:i] 时,会从 nmaSpread 返回一个对象。此对象不是数组,因此要添加它,您只需使用 addObject:,而不是 addObjectsFromArray:

关于objective-c - 从另一个数组添加对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8467554/

相关文章:

php - 使用相同数组索引的不同值从 mysql 填充 php 数组

c - 如何在 C 中定义数组

objective-c - 除了一个源文件之外的所有源文件中的前缀头?

iphone - 多任务处理后 AVAudioPlayer 继续播放

ios - 在 InterfaceBuilder 中启用/禁用 NSLayoutConstraints

iphone - 我的 block 没有保留它的一些对象

objective-c - 由于 if/else 语句中的返回,Xcode 认为控制可能到达非空函数的结尾

ios - XML 文件内容在 iOS 中发生了变化?

php - 从 PHP 中的 URL 字符串生成有效的数组键

ios - 如果它引用的 ViewControllers 是 NavigationControllers,如何给 TabBarController 项目命名?