2

我在数组中添加对象时出错 -[__NSArrayI addObjectsFromArray:]: unrecognized selector sent to instance 0xa0c5f70

id max;
   NSMutableArray * MovePointsArray=[[NSMutableArray alloc]init];
    max=[pointsArray objectAtIndex:0];
    for(int i=0;i<[pointsArray count];i++){

        if ([pointsArray objectAtIndex:i] > max) {
            max=[pointsArray objectAtIndex:i];
            [MovePointsArray addObject:max];
        }

    }

   NSMutableArray * pointArray =[NSArray arrayWithObjects: [pointsArray objectAtIndex:0],[pointsArray lastObject], nil];
    [pointArray addObjectsFromArray:MovePointsArray];

没有得到我做错了。

4

5 回答 5

5

在最后一行

NSMutableArray * pointArray =[NSArray arrayWithObjects: [pointsArray objectAtIndex:0],[pointsArray lastObject], nil];

替换NSArrayNSMutableArray

谢谢,

于 2013-04-23T10:32:43.063 回答
3

正确的代码

NSMutableArray * pointArray =[[NSMutableArray alloc] initWithObjects: [pointsArray objectAtIndex:0],[pointsArray lastObject], nil];
[pointArray addObjectsFromArray:MovePointsArray];

pointArray您正在使用进行初始化NSArray,并且NSArray下一行中没有该方法,addObjectsFromArray这是一种NSMutableArray方法..

于 2013-04-23T07:13:06.023 回答
2

你可以在这里找到你的错误:

NSMutableArray * pointArray =[NSArray arrayWithObjects: [pointsArray objectAtIndex:0],[pointsArray lastObject], nil];

替换NSArrayNSMutableArray

于 2013-04-23T07:14:27.310 回答
1

在最后一行中,pointArray 实际上是一个 NSArray 对象,而不是 NSMutableArray。

NSMutableArray * pointArray =[NSArray arrayWithObjects: [pointsArray objectAtIndex:0],[pointsArray lastObject], nil];
[pointArray addObjectsFromArray:MovePointsArray];

最后添加 mutableCopy 或类似的东西。

于 2013-04-23T07:12:55.390 回答
1
NSMutableArray * pointArray =[NSArray arrayWithObjects: [pointsArray objectAtIndex:0],[pointsArray lastObject], nil];

改成

NSMutableArray * pointArray =[NSMutableArray arrayWithObjects:@[pointsArray[0],[pointsArray lastObject]];
于 2013-04-23T07:13:28.693 回答