------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
NSArray 的介绍和基本使用
1、NSArray的基本介绍
1)什么是NSArray?
NSArray是OC中的数组类,开发中建议尽量使用NSArray替代C语言中的数组
C语言中数组的弊端
int array[4] ={10, 89, 27, 76};
只能存放一种类型的数据.(类型必须一致)
不能很方便地动态添加数组元素、不能很方便地动态删除数组元素(长度固定)
2)NSArray的使用注意
1、只能存放任意OC对象, 并且是有顺序的
2、不能存储非OC对象,比如int\float\double\char\enum\struct等
3、它是不可变的, 一旦初始化完毕后, 它里面的内容就永远是固定的, 不能删除里面的元素,也不能再往里面添加元素
2、NSArray的创建方式
+ (instancetype)array;
+ (instancetype)arrayWithObject:(id)anObject;
+ (instancetype)arrayWithObjects:(id)firstObj, ...;
+ (instancetype)arrayWithArray:(NSArray *)array;
+ (id)arrayWithContentsOfFile:(NSString *)path; // 读取一个xml文件.
+ (id)arrayWithContentsOfURL:(NSURL *)url; // 读取一个xml文件.
1)NSArray的类方法创建
2)使用NSArray的对象方法创建
3)使用已经存在数组创建新的数组
3、NSArray的使用注意
数组使用注意:
NSArray直接使用NSLog()作为字符串输出时是小括号括起来的形式。NSArray中不能存储nil,因为NSArray认为nil是数组的结束(nil是数组元素结束的标记)。nil就是0。0也是基本数据类型,不能存放到NSArray中。
NSArray *array = [NSArrayarray]; // 这样的数组永远是空的,不可能向其中增加值。(不可 变性)
<span style="font-size:14px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
//NSArray特点:
// 一旦创建成功,内容不可改变
// 只能存放OC对象
//1)创建一个空数组
NSArray *arr1 = [NSArray array];
//2)创建数组,只有一个元素
NSArray *arr2 = [NSArray arrayWithObject:@"1"];
//3)创建数组,有多个元素
// nil 表示数组赋值结束
// 常见写法
NSArray *arr3 = [NSArray arrayWithObjects:@"one",@"two",@1, nil];
NSLog(@"arr3 = %@",arr3);
//4)调用对象方法,创建数组
//nil Nil NULL NSNULL
NSArray *arr4 = [[NSArray alloc] initWithObjects:@"three",[NSNull null],@"four", nil];
NSLog(@"arr4 = %@",arr4);
//5)用一个数组可以创建另外一个数组
NSArray *arr5 = [NSArray arrayWithArray:arr3];
NSLog(@"arr5 = %@",arr5);
}
return 0;
}</span>