对于循环,当我不知道数组中的对象是什么?

时间:2014-04-21 20:51:51

标签: ios objective-c arrays cocoa

所以我有一个包含一些对象的数组(NSString,NSNumber等),我想使用for循环遍历它。我以为我会使用id作为类型。

NSArray *myArray = [[NSArray alloc] initWithObjects:@"one string",@"another", @3, nil];
for (id *something in myArray) {
....
}

上面的for循环出了什么问题?为什么我不能使用id以及使用什么是合适的“类型”。

我是iOS开发中的初学者。

2 个答案:

答案 0 :(得分:4)

id本质上是一个指针,所以你只需要:

for(id something in myArray) {

btw,使用常量对象语法使这些代码更清晰:

@[ @"one string", @"another", @3 ]

答案 1 :(得分:2)

id作为一个类型已经是一个指针,所以id *是一个指向指针的指针,这里不正确。试试这个:

for (id something in myArray) {

}