【发布时间】:2011-04-08 11:43:42
【问题描述】:
现在已经使用 XCode 大约 2 周了,并且阅读了一些关于 MVC 的信息。我在尝试将模型连接到控制器时遇到问题,因为我发现很难理解数组。当我用 Java 编写一些简单的数组时,我可以处理简单的数组,但我对 Obj-C NSArrays 看到的感到害怕。
如果有人愿意向我展示一些对对象数组的简单调用,我将永远感激不尽。
我的模特:
人.h
#import <Foundation/Foundation.h>
@interface Person : NSObject
{
NSString *name;
NSNumber *age;
}
@property(nonatomic, retain) NSString *name;
@property(nonatomic, retain) NSNumber *age;
@end
人.m
#import "Person.h"
@implementation Person
@synthesize name;
@synthesize age;
@end
在我尝试学习的过程中,我一直保持非常简单。
现在我的控制器类。我想做的是创建一个包含 40 个“人”对象的数组。但我不知道将其放入 Obj C 代码中的正确方法。
控制器.h
#import <Foundation/Foundation.h>
@class Person;
@interface Controller : NSObject
{
Person *person;
}
@property(nonatomic, retain) Person *person;
-(void) doSomeWork;
@end
控制器.m
#import "Controller.h"
#import "Person.h"
@implementation Controller
@synthesize person;
-(IBAction)doSomeWork
{
// I guess here is where i should create my array of 40 person objects
}
@end
我的问题是如何声明大小为 40 的人员对象数组。 然后是如何访问数组进行读写。
提前感谢您阅读我的帖子。
【问题讨论】:
-
不要被吓倒。一个 Objective-C 数组就像一个 Java
ArrayList<Object>。它可以像 ArrayList 一样增长和收缩,并且可以容纳任何对象(您可以在数组中混合对象类型)。 -
它不是一个数组列表。它不能增长/缩小——只有可变数组可以
标签: iphone objective-c model-view-controller nsarray