objective-c基础语法之数组NSArray、NSMutableArray

87214552 2015-06-12

  • 创建一个不可变数组NSArray有以下几种方式
    //仅仅开辟了一块内存并创建了一个NSArray类型的对象,没有什么内容
    NSArray *array = [[NSArray alloc]init];
     
    //开辟内存创建一个带有多个对象的数组
    //id是通用指针  可以是各种类型的对象
    NSArray *array = [[NSArray alloc]initWithObjects:(id), ..., nil];
    //使用如下:创建带有两个字符串的的数组
    NSArray *array_test = [[NSArray alloc]initWithObjects:@"mary",@"jack", nil];
    这时数组array_test中含有两个字符串数据@"mary"和@"jack"
     
    //创建一个带有数组A中数据的数组
    NSArray *array = [[NSArray alloc]initWithArray:(NSArray *)];
    //使用如下:
    NSArray *a_array = [[NSArray alloc]initWithObjects:@"mary",@"jack", nil];
    NSArray *b_array = [[NSArray alloc]initWithArray:a_array];
    //这是数组b_array中含有@"mary"和@"jack"两个字符串数据
     
    //创建一个数组从URL中获取内容
    NSArray *array = [[NSArray alloc]initWithContentsOfURL:(NSURL *)];
    //使用如下:
    //声明一个网址url 存储网址数据
    NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
    //网址测试不对,可以使用真实的数据,见谅
    NSArray *array = [[NSArray alloc]initWithContentsOfURL:url];
     
    //创建一个数组从本地文件路径中获取内容
    NSArray *array = [[NSArray alloc]initWithContentsOfFile:(NSString *)];
    //使用如下:
    //创建沙盒中一个文件的路径字符串
    NSString *str_file = [[NSString alloc]initWithString :@"/Users/chen/Library/Developer/CoreSimulator/Devices/E4B57B50-BEE7-40C6-9DE1-1C602CFB0ECE/data/Containers/Data/Application/F38B3701-744A-4E44-BDDB-162372C1EADC/Documents/student.plist"];
    NSArray *arr_file = [[NSArray alloc]initWithContentsOfFile:str_file];
  •  创建一个不可变数组NSMutableArray有以下几种方式
    //创建一个容量为多少个数的可变数组
    NSMutableArray *mutable_array = [[NSMutableArray alloc]initWithCapacity:(NSUInteger)];
    使用如下:
    NSMutableArray *mutable_array = [[NSMutableArray alloc]initWithCapacity:0];
    //可变数组可以添加一个对象
    [mutable_array addObject:(id)];
    //使用如下:
    [mutable_array addObject:@"name"];
     

  • NSMutableArray与NSArray基本相同的初始化方法
    //从数组中创建一个新的数组
    NSMutableArray *mutable_array = [[NSMutableArray alloc]initWithArray:(NSArray *)];
    //从本地文件创建一个数组
    NSMutableArray *mutable_array = [[NSMutableArray alloc]initWithContentsOfFile:(NSString *)];
    //从网址创建一个数组
    NSMutableArray *mutable_array = [[NSMutableArray alloc]initWithContentsOfURL:(NSURL *)];
    //根据传入的一个或多个对象创建一个数组
    NSMutableArray *mutable_array = [[NSMutableArray alloc]initWithObjects:(id), ..., nil];
    //创建一个空的可变数组
    NSMutableArray *mutable_array = [[NSMutableArray alloc]init];
     
     
  • 读取数组中的数据
    //读取数组中的第0个元素,数组下标是从0~(数组长度-1)
    [mutable_array objectAtIndex:0];
    //读取数组的长度
    [mutable_array count];
     

相关推荐