---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
OC数组只能存放OC对象,不能存放非OC对象类型(基本数据类型:int,char,float等,结构体,枚举)
NSArray是不可变的
NAMutableArray是可变的
一.NSArray
1.NSArray的创建:
NSArray *array = [NSArray array]; //这个array永远是空数组
NSArray *array1 = [NSArray arrayWithObject : @"jack" ];
NSArray *array2 = [NSArray arrayWithObjects : @"name",@"rose",nil ]; //nil是数组元素结束的标志
NSArray *array3 = @[@"jack" ,@"name",@"rose"]; //快速创建一个NSArray对象
2.元素的个数
array3.count //代表array3这个数组有多少个元素,有3个
3.元素的访问
第一种i:[array3 objectAtIndex: 1]; //访问的是:name
第二种:array3[0]; //访问的是:jack
NSArray 数组遍历
NSArray *array3 = @[@"jack" ,@"name",@"rose"];
第一种方式
for(int i = 0;i<array3.count ; i++ )
{
NSLog(@"%@" ,array3[i]);
}
第二种方式:
for(id obj in array3)
{
NSUInteger i = [array3 indexOfObject: obj];
NSLog(@"%ld---%@" , i , obj);
}
第三种方式:
[ array3 emuerateObjectUsingBlock:
^(id obj ,NSUInteger idx, BOOL *stop)
{
NSLog(@"%ld---%@" , idx , obj);
}];
二.NAMutableArray
NAMutableArray创建:
NAMutableArray *array2 = [NAMutableArray arrayWithObjects : @"name",@"rose",nil ];
[array2 addOject : @"jack"]; //添加元素
[array2 removeAllObject]; // 删除所有元素
[array2 removeObject:@"name" ]; 或者[array2 removeAatInObject: 1 ]; //删除指定对象