如何在objective-c中放入不同类型的字段

时间:2012-03-05 18:29:43

标签: objective-c ios5 xcode4.2

我正在为objective-c编写iPhone应用程序。我想声明一个包含不同类型字段的数组,例如:int,NSString,bool。 我可以这样做吗?

4 个答案:

答案 0 :(得分:2)

只要它们是对象,您就可以在NSArray中放置任何项目。因此,您必须将某些非对象项(例如BOOLintCGPoint)包装在某些对象中,例如NSNumberNSValue

NSMutableArray *array = [[NSMutableArray] alloc] init];

[array addObject:myString];

[array addObject:[NSNumber numberWithInt:1]];

[array addObject:[NSNumber numberWithFloat:1.0]];

[array addObject:[NSValue valueWithPoint:myPoint]]; // myPoint is a CGPoint

[array addObject:[NSValue valueWithRect:myRect]]; // myRect is a CGRect

答案 1 :(得分:1)

是的,你可以

NSMutableArray *array = [NSMutableArray array];
NSString *string = @"str";
[array addObject:string]; //string
NSNumber *num = [NSNumber numberWithInt:1];
[array addObject:num]; //int
NSNumber *boolNum = [NSNumber numberWithBool:YES];
[array addObject:boolNum]; //bool

答案 2 :(得分:0)

使用NSMutableArray

NSMutableArray *array = [[NSMutableArray alloc]init];

现在使用addObject:方法添加对象。为了添加int,bool值创建NSNumber对象。

答案 3 :(得分:-1)

有可能。只需创建数组并添加要添加的对象。