定义一个arrar
int array[3]={10,20,30};
array 只能存放一种数据类型
NSArray
NSArray是OC中的数组类,使用起来更灵活,开发中建议尽量使用NSArray替代C语言中的数组.
2、NSArray的初始化
NSArray *arr1=[NSArray arraywith object:@"1"];
NSArray *arr2=[NSArray arraywith object:@"1",@"2",@"3"];
//用数组生成另一个数组
NSArray *arr3=[NSarray arraywitharray:arr2];
NSArray *arr4=@[
arr1,
arr2,
arr3
];
for(int i=0;i<3;i++){
NSLong(@"arr %d - %@",i,arr[i]);
}
3、NSArray的使用注意事项
1,只能存放任意OC对象, 并且是有顺序的。
2, 不能存储非OC对象,比如int\float\double\char\enum\struct等。
3, 它是不可变的,一旦初始化完毕后,它里面的内容就永远是固定的, 不能删除里面的元素, 也不能再往里面添加元素
4、NSArray的常见用法
1、NSArray的简写形式
- 1,数组的创建
- 以前 [NSArray arraywitharray:@"cat",@"dog",@"fish",nil];
- 现在
- @[@"cat",@"dog",@"fish"];
-
2> 数组元素的访问
以前 - [array objectAtlndex:0]
- 现在
- array[0];
5、NSArray的遍历方法
-
遍历, 就是将NSArray里面的所有元素一个一个取出来查看
-
1、NSArray的普通遍历
-
for(int i=0;i<array.ount;i++){}
-
2、【理解】NSArray的快速遍历
-
for(id obj in array){}
-
3、NSArray使用block进行遍历
-
[array enumerateObjectUsingBlock:^(id obj,NSUinteger idx,BOOL*stop){}];
6、【理解】NSArray读写文件
-
1、【理解】NSArray数据写入到文件中
-
NSArray *array = @[@"a",@"b"]; BOOL res = [array writeToFile:@"/Users/sleepingsun/Desktop/test.txt" atomically:YES]; NSLog(@"%@",array);
-
2、【理解】从文件中读取数据到NSArray中
NSArray *array1 = [NSArray arrayWithContentsOfFile:@"/Users/sleepingsun/Desktop/test.txt"]; NSLog(@"%@",array1);
7、NSArray与NSString相互转换
-
1、字符串分割成一个数组方法
// 这是NSString的方法 // 将字符串用separator作为分隔符切割成数组元素 - (NSArray *)componentsSeparatedByString:(NSString *)separator; NSString *str = @" 床前山月光 疑是地上霜 举头望明月 低头思故乡"; NSArray *arr = [str componentsSeparatedByString:@" "];//根据“ ”(空格)来把一个字符串分割成数组 NSLog(@"%@",arr[1]); for (NSString *temp in arr) { NSLog(@"temp - %@",temp); }
-
2、把数组元素链接成字符串
// 这是数组方法 // 用separator作拼接符将数组元素拼接成一个字符串 - (NSString *)componentsJoinedByString:(NSString *)separator; //Joined - 联合 加入 NSString *str2 = [arr componentsJoinedByString:@","];将数组链接成一个字符串 并在每个对象插入“,” NSLog(@"str2 - %@",str2);