gpt4 book ai didi

ios - 使用 NSArray 初始化对象数组

转载 作者:IT老高 更新时间:2023-10-28 11:48:40 25 4
gpt4 key购买 nike

我对 Objective-C 和 iOS 还很陌生,所以我一直在玩 Picker View。我已经定义了一个 Person 类,这样当你创建一个新的 Person 时,它会自动给这个人一个名字和年龄。

#import "Person.h"

@implementation Person

@synthesize personName, age;

-(id)init
{
self = [super init];
if(self)
{
personName = [self randomName];
age = [self randomAge];
}

return self;
}

-(NSString *) randomName
{
NSString* name;
NSArray* nameArr = [NSArray arrayWithObjects: @"Jill Valentine", @"Peter Griffin", @"Meg Griffin", @"Jack Lolwut",
@"Mike Roflcoptor", @"Cindy Woods", @"Jessica Windmill", @"Alexander The Great",
@"Sarah Peterson", @"Scott Scottland", @"Geoff Fanta", @"Amanda Pope", @"Michael Meyers",
@"Richard Biggus", @"Montey Python", @"Mike Wut", @"Fake Person", @"Chair",
nil];
NSUInteger randomIndex = arc4random() % [nameArr count];
name = [nameArr objectAtIndex: randomIndex];
return name;
}

-(NSInteger *) randomAge
{
//lowerBound + arc4random() % (upperBound - lowerBound);
NSInteger* num = (NSInteger*)(1 + arc4random() % (99 - 1));

return num;
}

@end

现在我想创建一个 Person 数组,这样我就可以将一堆放入选择器中,选择一个 Person 并显示他们的年龄。首先,虽然我需要创建一个 Persons 数组。如何创建对象数组、初始化和分配它们?

最佳答案

还有一个简写方式:

NSArray *persons = @[person1, person2, person3];

相当于

NSArray *persons = [NSArray arrayWithObjects:person1, person2, person3, nil];

正如 iiFreeman 所说,如果您不使用 ARC,您仍然需要进行适当的内存管理。

关于ios - 使用 NSArray 初始化对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14970412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com