首页 > 代码库 > NSArray的创建

NSArray的创建

NSArray是OC三大基础数据结构之一, 与字符串, 字典一样的重要. 这里我们来讲解一下Array的一些常用方法以及注意的事项.

 

其实在OC上创建NSArray有很多方法可以使用.

 

比如:

initWithObjects: 这个方法就是创建一个字符串数组.

description: 关于这个方法.详情请去看http://www.cnblogs.com/iOSCain/p/4019697.html 

而我这里是利用了重写description的一个方法创建了一个字符串数组, 下面让我们来看看例子吧~

首先我们需要新建一个Cocoa.class文件.

Human.h文件

#import <Foundation/Foundation.h>@interface Human : NSObject@end

Human.m文件

#import "Human.h"@implementation Human- (NSString *)description{    return @"I am a human!";}@end

main.m文件

#import <Foundation/Foundation.h>#import "Human.h"int main(int argc, const char * argv[]) {    @autoreleasepool {        //这里我们重写了Description的方法.        Human *human = [Human new];        //NSLog(@"human = %@", human);        //打印description就是打印它的返回值的地址.        //输出结果是:        //2014-10-11 20:28:40.062 NSArray[2314:303] human = I am a human!        //Program ended with exit code: 0                NSArray *array = [[NSArray alloc]initWithObjects:@"One", @"Tow", @"Three", human, nil];        //为什么这里会使用字符串呢, 那是因为用字符串创建的数组比较的简单.        //而且数组中装的是元素的地址, 不是值.        //一个元素可以在多数组中使用.        NSLog(@"array = %@", array);        //打印数组, 就是打印数组里的每一个元素.        //为什么在OC中可以这么简便的打印出数组呢?        //为什么把human放到数组里的输出结果会是"I am a human!"?        //那是因为human返回的地址不是一个单词, 而是一个字符串.                [array release];        [human release];        }    return 0;}

输出的结果:

2014-10-12 13:42:51.657 NSArray[1216:303] array = (    One,    Tow,    Three,    "I am a human!")Program ended with exit code: 0

 

NSArray的创建