您的位置:首页 > 其它

119,NSArray的基本使用

2015-12-20 20:33 260 查看
#import <Foundation/Foundation.h>

/*

1,什么是NSArray?

>NSArray是OC中的数组类,开发中,建议尽量使用NSArray代替C语言中的数组

>C语言中的数组的弊端:

-只能存放一种类型的数据

-不能很方便地动态添加或删掉数组元素

2,NSArray的使用注意

>只能存放任意OC对象,并且是有顺序的

>不能存储非OC对象,比如,int/float/double/char/enum/struct。只能转成OC对象才能存放入NSArray

>它是不可变的,一旦初始化完毕后,它的内容就永远是固定,不能添加或删掉数组元素

*/

int main(int argc,
const char * argv[]) {

//3,初始化NSArray的数组

//(一)初始化一个空数组

NSArray *arr = [[NSArray
alloc]init];

//(二)用一个对象来初始化一个数组

NSArray *arr1 = [NSArray
arrayWithObject:@"ljs"];

//(三)用多个对象来初始化一个数组

//nil是数组的结束符

NSArray *arr2 = [NSArray
arrayWithObjects:@"ljs",@"lms",@"lka",nil];

NSArray *arr3 =
@[@"adh",@"kaid",@"zhede"];

NSLog(@"arr3 = %@",arr3);

//4,NSArray常用的方法

//(一)求数组里面的对象个数

NSUInteger count = [arr3
count];

NSLog(@"count = %lu",count);

//(二)取出数组的第一个对象

NSLog(@"firstObject = %@",[arr3
firstObject]);

//(三)取出数组的最后一个对象

NSLog(@"lastObject = %@",[arr3
lastObject]);

//(四)根据指定位置取出对应的对象

NSLog(@"arr3[1] = %@",[arr3
objectAtIndex:1]);

NSLog(@"arr3[1] = %@",arr3[1]);

//(五)判断数组是否包含某一个对象

if ([arr3 containsObject:@"kaid"]) {

NSLog(@"数组arr3包含了对象kaid");

}else{

NSLog(@"数组arr3不包含了对象kaid");

}

//5,数组的遍历

//(一)常用遍历

for(int i =
0;i <arr3.count;i++){

NSLog(@"arr3[%i] = %@",i,arr3[i]);

}

NSLog(@"---------------");

for(NSObject *obj
in arr3){

NSLog(@"%@",obj);

}

NSLog(@"---------------");

//使用OC数组的迭代器来遍历

//每取出一个元素就会调用一个block,就会把元素,下标传给我们

//stop:用于控制什么时候停止遍历

[arr3 enumerateObjectsUsingBlock:^(id
_Nonnull obj, NSUInteger idx,
BOOL * _Nonnull stop) {

if(idx ==
1){

*stop = YES;

}

NSLog(@"arr3[%lu] = %@",idx,obj);

}];

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: