'id'类型对象为NSArray问题

时间:2010-09-04 20:56:03

标签: iphone objective-c

我有一个NSDictionary,我以“id”类型格式获取对象和键,使用以下代码:

    NSDictionary *temp =[[NSDictionary alloc]initWithObjectsAndKeys:array1,@"array1",array2,@"array2",nil];
    NSInteger count = [temp count];
    id objects[count];
    id keys[count];
    [temp getObjects:objects andKeys:keys];

其中array1和array2是NSArrays。 有没有办法将id对象[n]转换为NSArray? (在这个例子中有点无意义导致array1和array2已经存在,但这在许多方面都会有所帮助)

1 个答案:

答案 0 :(得分:2)

是。您的数组objects是C数组,其中包含count项。 NSArray有一个初始化程序可以满足您的需求:

 + (id)arrayWithObjects:(const id *)objects count:(NSUInteger)count

所以你会这样做

 NSArray * myNewArray = [NSArray arrayWithObjects:objects count:count];

在这种情况下。

Docs here.