Objective-C可以开发apple家族系列产品的软件,这里记录成笔记方便日后复习:
- Objective-c学习笔记01——简介
- Objective-c学习笔记02——类(面向对象)
- Objective-c学习笔记03——内存管理
- Objective-c学习笔记04——NSString
- Objective-c学习笔记05——NSArray(NSMutableArray)
- Objective-c学习笔记06——字典与集合
- Objective-c学习笔记07——异常处理(try catch)
一、数组简介
NSArray:用来存储有序数组,它是不可变的,也不能存储C语言中的基本数据类型(int、float、double、enum、struct),也不能存nil,如果需要使用基本数据类型,需要先转成Objective-c中的对象。如NSNumber。另外,数组的最后一个元素一定是nil,表示结束。
二、创建数组
- //1、array
- NSArray * arr = [NSArray array]; //因为是类方法,所以无需管理内存
- //2、arrayWithArray:
- NSArray * arr1 = [NSArray arrayWithArray:arr];
- //3、arrayWithObject:
- NSArray * arr3 = [NSArray arrayWithObject:@"Apple"];
- //4、arrayWithObjects:
- NSArray * arr4 = [NSArray arrayWithObjects:@"Apple", @"Android", nil];
- //5、arrayWithObjects:count:
- NSString * str5[3] = {@"aaa", @"BBB", @"CCC"};
- NSArray * arr5 = [NSArray arrayWithObjects:str5 count:2]; //获取数量
- //6、init
- NSArray * arr6 = [[NSArray alloc] init];
- arr6 = @[@"LLL", @"IIII", @"BBBB"];
- [arr6 release]; //对象需要进行内存释放
- //7、initWithArray:
- NSArray * arr7 = [[NSArray alloc] initWithArray:arr6];
- [arr7 release];
- //8、initWithObjects:
- NSArray * arr8 = [[NSArray alloc] initWithObjects:arr6, arr5, nil];
- //9、initWithObjects:count:
- NSArray * arr9 = [[NSArray alloc] initWithObjects:str5 count:1];
- [arr9 release];
- //10、arrayWithCapacity 初始化可变数组对象的长度
- NSMutableArray *array10 = [NSMutableArray arrayWithCapacity:10];
- //11、initWithCapacity
- NSMutableArray * array101 = [[NSMutableArray alloc] initWithCapacity:10];
*自面量(@) < @[<#objects, ...#>] >
可以使用下面的方式创建数组,并且无需担心内存
- NSArray *arr2 = @[@"Apple", @"DELL", @"Lenovo"];
三、数组删除(NSMutableArray)
- //1.removeAllObjects 删除数组中所有的Objects
- NSMutableArray *list = [[NSMutableArray alloc] init];
- Person *car = [[