// NSArray数组一个容器,用来存放对象
//数组里存放的元素是id类型
//<#(id), ...#>id类型任意类型(对象类型),但不包括基本数据类型
//void类型空类型
//对象修饰: return 类类型; assign 基本数据类型; copy 字符串类型:NSString
//创建一个数组(不能存放基本数据类型)
//NSArray *array = [[NSArray alloc] initWithObjects:@"1",@"2", nil];
//静态创建
//NSArray *array = [NSArray arrayWithObjects:@"1",@"2", nil];
//更快捷的写法
//@[<#objects, ...#>]
NSArray*array = @[@"1",@"2"];
//只有一个元素的数组
//[NSArray arrayWithObject:<#(id)#>];
//使用:从数组中取元素,数组在存放元素时会对元素进行编号,每个元素的编号叫做索引值(index),从0开始,通过索引值取出元素
//存的是什么类型,就用相应类型来取objectAtIndex通过索引值取元素
// integer == int有符整型符指= -号
//<#(NSUInteger)#>无符整型正整数
NSString *object = [array objectAtIndex:0];
//简单的写法array [0];
//NSString *object = array [0];
NSLog(@"object = %@",object);
//数组array的占位符是%@
NSLog(@"array = %@",array);
//NSArray不可变数组在创建时添加元素,创建好之后,其内容不能更改,不适合存放大量元素
//所以给出了可变数组,可以对数组进行增,删,改,查的操作,适合存放大量数据
//Mutable变化的,可变的
//可变数组NSMutableArray
//创建一个可变数组
//initWithCapacity设置为0表示可任意内存容量设置固定数字可能造成资源浪费或者直接init也OK
//NSMutableArray *mutableArray = [[NSMutableArray alloc] initWithCapacity:0];
//静态创建
//NSMutableArray *mutableArray = [NSMutableArray array];
NSMutableArray *mutableArray = [NSMutableArray arrayWithCapacity:0];
//用@[]方式只能创建不可变数组
//NSMutableArray *mutableArray1 = @[];
//1.增
[mutableArray addObject:@"1"];
[mutableArray addObject:@"2"];
[mutableArray addObject:@"3"];
//往数组添加0到100的数字
for(inti = 0; i <= 100; i++) {
//数组内不能是基本数据类型转换为字符串类型拼接
NSString *string = [NSStringstringWithFormat:@"hehe-%d",i];
[mutableArray addObject:string];
}
//2.删除
//清空数组
//[mutableArray removeAllObjects];
//删除最后一个元素
//[mutableArray removeLastObject];
//删除指定元素
[mutableArray removeObject:@"3"];
//根据索引值index删除
[mutableArray removeObjectAtIndex:4];
//修改
//1.通过索引值替换元素
[mutableArray replaceObjectAtIndex:50 withObject:@"呵呵哈嘿"];
// "\U5475\U5475\U54c8\U563f",系统会对汉字进行编码数组中的汉字会进行十六进制编码
//2.通过插入到某一行
[mutableArray insertObject:[[UILabel alloc] init] atIndex:6];
//查找
//获取数组中元素的个数
int count = [mutableArray count];
NSLog(@"元素个数%d",count);
for(inti = 0; i < count; i++) {
//通过变量i的值,作为索引值,找到每一个元素
NSString *string = [mutableArray objectAtIndex:i];
NSLog(@"---%@",string);
}
//遍历数组方式
for(NSString*string in mutableArray) {
NSLog(@"==%@",string);
}
NSLog(@"mutableArray = %@",mutableArray);
}