for(int i=0;i>count;i++)
{
NSArray *temp=[[NSArray alloc]initWIthObjects]i,nil];
NSLog(@"%i",temp);
}
它返回到我0,1,2,3 ....计数一个接一个,但我想附加这些值{0,1,2,3,4,5 ...}的数组。 这不是什么大不了的事,但我找不到它。我是iPhone新手。
for(int i=0;i>count;i++)
{
NSArray *temp=[[NSArray alloc]initWIthObjects]i,nil];
NSLog(@"%i",temp);
}
它返回到我0,1,2,3 ....计数一个接一个,但我想附加这些值{0,1,2,3,4,5 ...}的数组。 这不是什么大不了的事,但我找不到它。我是iPhone新手。
NSMutableArray *myArray = [NSMutableArray array];
for(int i = 0; i < 10; i++) {
[myArray addObject:[NSNumber numberWithInt:i]];
}
NSLog(@"myArray:\n%@", myArray);
这个代码是没有做你想让它有以下几个原因做什么:
NSArray
不是一个“可变”级,这意味着它的设计没有它的创建后进行修改。可变版本是NSMutableArray
,它可以让你追加值。
您不能将类似int
的图元添加到NSArray
或NSMutableArray
类;他们只持有物品。 NSNumber
类是为这种情况而设计的。
您每次分配数组时都在泄漏内存。请始终将每个电话与alloc
配对,拨打电话release
或autorelease
。
你想要的代码是这样的:
NSMutableArray* array = [[NSMutableArray alloc] init];
for (int i = 0; i < count; i++)
{
NSNumber* number = [NSNumber numberWithInt:i]; // <-- autoreleased, so you don't need to release it yourself
[array addObject:number];
NSLog(@"%i", i);
}
...
[array release]; // Don't forget to release the object after you're done with it
我给你的建议是阅读Cocoa Fundamentals Guide了解一些基本知识。
你可以做一个简短的形式是:
NSMutableArray *myArray = [NSMutableArray array];
for(int i = 0; i < 10; i++) {
[myArray addObject:@(i)];
}
NSLog(@"myArray:\n%@", myArray);
不要使用BR标记。使用“101010”按钮格式化代码。 – 2010-09-13 06:13:31