前几天把 NSString
和 NSMutableString
相关使用知识进行整理,对 API 进行列举然后介绍相关的使用方法。
但在开发过程中我们经常也会遇到多个字符串,多个不同类型数组。
在 iOS
中数组可以使用 NSArray
或者 NSMutableArray
来进行管理和使用。
NSArray
在 iOS 中储存的方式是连续的储存,而非链式存储。代码如下:
1 | NSArray *array = [[NSArray alloc] initWithObjects:@"First name", @"last name", nil]; |
进行断点打印 First name
和 last name
的位置,打印结果如下:
1 | Printing description of ((__NSCFConstantString *)0x000000010cdba0c8): |
NSArray
NSArray
初始化
NSArray
初始化方式:
1 | //使用类方法进行实现 `NSArray` 进行初始化 |
NSArray
从文件和URL地址初始化
1 | + (nullable NSArray<ObjectType> *)arrayWithContentsOfFile:(NSString *)path; |
NSArray
初始话的实例:
1 | NSArray *arrayString = @[@"First name", @"last name"];//直接初始化 |
NSArray
经常使用API
1 | //NSArray 中常见的一些属性 |
NSMutableArray
NSMutableArray
是继承自 NSArray
的子类:
1 | @interface NSMutableArray<ObjectType> : NSArray<ObjectType> |
NSMutableArray
的初始化
1 | + (instancetype)arrayWithCapacity:(NSUInteger)numItems;//以 item 数目来进行初始化 |
NSMutableArray
一些基本函数
1 | - (void)addObject:(ObjectType)anObject;//添加 |
NSMutableArray
高级应用
1 | //对现有的 array 数组添加 NSArray |
NSArray
和 NSMutableArray
区别
NSArray
和NSMutableArray
两者都是对多个字符来进行储存,NSMutableArray
是 NSArray
的子类。两者的最基本的父类都是继承与 NSobject
。
但是 NSMutableArray
是可变数组,可以动态修改数组中的相关参数和其中的长度。