NSArray的创建(二)类方法

利用一个类方法来创建一个数组, 关于什么是类方法, 同学们麻烦请回去自行查找, 这里不做解释, 下面我们来看看方法和例子.

 

涉及的方法:

@property (nonatomic, assign) int age: 定义一个int age 的属性. 

+ (instancetype)arrayWithArray:(int)age: 声明一个arrayWithArray的类方法.

 

下面我们来看看例子:

先创建一个新的文件, 我这里命名为LeiNSArray.h文件

#import <Foundation/Foundation.h>

@interface LeiNSArray : NSObject
@property (nonatomic, assign) int age;

+ (instancetype)arrayWithArray:(int)age;

@end

方法的实现:

方法的实现很简单, 首先创建一个空的数组, 然后把属性也在该方法实现, 再返回给array.

#import "LeiNSArray.h"

@implementation LeiNSArray
+ (instancetype)arrayWithArray:(int)age;
{   LeiNSArray *array = [[LeiNSArray alloc]init];
    array.age = age;
    return array;
}
@end

main.m文件

#import <Foundation/Foundation.h>
#import "LeiNSArray.h"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        LeiNSArray *lei = [LeiNSArray arrayWithArray:10];
        LeiNSArray *lei2 = [LeiNSArray arrayWithArray:20];
        LeiNSArray *lei3 = [LeiNSArray arrayWithArray:30];
        NSArray *arr = @[lei, lei2, lei3];
        NSLog(@"lei = %d\nlei2 = %d\nlei3 = %d", lei.age, lei2.age, lei3.age);
        NSLog(@"%@", arr);
    }
    return 0;
}

输出的结果:

2014-10-15 11:50:36.322 NSArrayDemo2[10765:303] lei = 10
lei2 = 20
lei3 = 30
2014-10-15 11:50:36.324 NSArrayDemo2[10765:303] (
    "<LeiNSArray: 0x100201b10>",
    "<LeiNSArray: 0x100202f70>",
    "<LeiNSArray: 0x100202f80>"
)
Program ended with exit code: 0

 

posted @ 2014-10-15 12:03  背着吉他去流浪  阅读(263)  评论(0编辑  收藏  举报