/*
数组
系统提供的数组类:类似于C语言中的数组功能
数组是一个大容器,数组中可以存储不同类型的对象,但必须要保证数组中存储的都是对象
OC中提供了两类数组:一类是NSArray(不可变数组) 一类是NSMutableAarry(可变数组);
可变与不可变的区别:可变就意味着可以对原有对象进行操作,不可变就意味着一旦创建,内容就不可改变.
*/
//(1)使用初始化方法创建数组
// NSArray *array1 = [[NSArray alloc] initWithObjects:@"徐冶",@"徐宝宝",@"冶宝宝",@"徐冶宝宝", nil];
// NSLog(@"%@",array1);
//(2)使用便利构造器方法创建数组
// NSArray *array = [NSArray arrayWithObjects:@"xuye",@"xubaobao",@"yebaobao",@"xuyebaobao", nil];
// NSLog(@"%@",array);
//(3)字面量
// NSArray *array = @[@"xuye",@"xubaobao",@"yebaobao",@"xuyebaobao",];
// NSLog(@"%@",array);
// //数组元素的个数
// NSUInteger count = array.count;
// NSLog(@"%lu",count);
// //获取数组元素
// NSString *name1 = [array objectAtIndex:0];
// NSLog(@"%@",name1);
// //字面量取法
// NSString *name2 = array[2];
// NSLog(@"%@",name2);
// 当数组元素为空的时候,使用firstObject以及lastObject可以保证程序安全,不会崩溃,返回值是nil,但是用objectAtIndex:时,如果数组为空,则程序崩溃
// NSArray *namearrayOne = [NSArray arrayWithObjects:@"xuye",@"xubaobao",@"yebaobao",@"xuyebaobao", nil];
// NSArray *namearrayTwo = [NSArray arrayWithObjects:@"xiaoyali",@"dayali",@"yalibaobao",@"xiaoyalibaobao", nil];
// //查找xubaobao 对应的下标
// NSUInteger index = [namearrayOne indexOfObject:@"xubaobao"];
// NSLog(@"%lu",index);
// //判断数组中是否包含某个对象(很重要很重要很重要)
// BOOL isTrue = [namearrayOne containsObject:@"xubaobao"];
// NSLog(@"isTrue == %d",isTrue);
// //判断两个数组是否相等
// BOOL isEqual = [namearrayOne isEqualToArray:namearrayTwo];
// NSLog(@"isEqual == %d",isEqual);
//
// NSString *string = @"123";
// NSString *string1 = @"hjiuw";
// if ([string isEqualToString:string1]) {
// NSLog(@"相等");
// }else{
// NSLog(@"不相等");
// }
#if 0
//NSArray和NSString之间的转换
NSString *string = @"www.lanou3g.com";
NSArray *array = [string componentsSeparatedByString:@"."];
NSLog(@"%@",array);
//数组到字符串
NSArray *array1 = [NSArray arrayWithObjects:@"北京",@"大连",@"上海",@"广东",@"郑州", nil];
NSString *string1 = [array1 componentsJoinedByString:@"&"];
NSLog(@"%@",string1);
#endif
#if 0
/*
存在如下的字符串,将其中的图片的网址提取出来。
“http://www.imanhua.com/Cover/2011-10/hyrz.jpg&http://www.imanhua.com/Cover/2011-09/op.jpg&http://www.imanhua.com/Cover/2012-04/yjdwb.jpg”
*/
NSString *string = @"http://www.imanhua.com/Cover/2011-10/hyrz.jpg&http://www.imanhua.com/Cover/2011-09/op.jpg&http://www.imanhua.com/Cover/2012-04/yjdwb.jpg";
NSArray *array = [string componentsSeparatedByString:@"&"];
NSLog(@"%@",array);
#endif
#if 0
/*
有如下一个数组,@[@“type = iOS", @"Device = iPhone", @"count = 11344115@163.com", @"password = 12345”],将其中的内容用”&"符号拼接成一个字符串
*/
NSArray *array = [NSArray arrayWithObjects:@"type = iOS", @"Device = iPhone", @"count = 11344115@163.com", @"password = 12345", nil];
NSString *string = [array componentsJoinedByString:@"&"];
NSLog(@"%@",string);
#endif
#if 0
//Capacity容量
//以下三种方式都是创建一个可变的空数组
NSMutableArray *myArray = [[NSMutableArray alloc] initWithCapacity:1];
NSMutableArray *youArray = [NSMutableArray arrayWithCapacity:1];
NSMutableArray *bigArray = [NSMutableArray array];
//增加数据
//addObject: 在数组的最后面添加
[bigArray addObject:@"lanou"];
[bigArray addObject:@"dalian"];
[bigArray addObject:@"beijing"];
NSLog(@"%@",bigArray);
//在指定位置插入一个元素
[bigArray insertObject:@"hehie" atIndex:1];
NSLog(@"%@",bigArray);
//删除
//1.删除指定元素(只要是这个对象,有多少删多少)
[bigArray removeObject:@"beijing"];
NSLog(@"%@",bigArray);
[bigArray removeObjectAtIndex:0];
NSLog(@"%@",bigArray);
//替换元素
[bigArray replaceObjectAtIndex:1 withObject:@"beijing"];
NSLog(@"%@",bigArray);
//交换指定位置的两个元素
[bigArray exchangeObjectAtIndex:0 withObjectAtIndex:1];
NSLog(@"%@",bigArray);
//删除全部
[bigArray removeAllObjects];
NSLog(@"%@",bigArray);
#endif