分類
1. Array 有序寇荧,包含index和value兩部分
2. Set 無序
3. Dictionary key指向value(一對一或多對一)
數(shù)組
NSArray
1. 引用類型
2. 初始化:NSArray *array3=@[@"Shanghai",@"Beijing",@"New York",@"Paris"];
3. 數(shù)組元素必須為對象锉试,對于值類型需要用NSNumber封裝
對于結(jié)構(gòu)類型,需要用NSValue封裝
注意:堆的生存周期比棧要長嫩挤,因此堆上不能有指針指向棧上的元素
4. 常量性:不能更改數(shù)組長度,不能更改指針迅皇,但指針指向的對象可以更改
數(shù)組遍歷
1. 快速枚舉:for in √
2. 迭代器模式
3. 傳統(tǒng)for循環(huán)
數(shù)組查找
1. indexOfObject 值相等(需要修改isEqual類)
2. indexOfObjectIdenticalTo 引用相等
數(shù)組排序
1. 由于數(shù)組常量性从铲,排序后返回新數(shù)組
2. 字符串按字母排序
NSMutableArray
支持更改數(shù)組長度和元素指針
1. 修改元素:添加纫骑、刪除蝎亚、插入、替換
2. 與NSMutableString類似先馆,NSMutableArray在初始化時也需要預(yù)估容量发框,避免緩存容量成倍增長
3. 避免插入、刪除等需要大量內(nèi)存拷貝的操作
Set集合
1. 無序煤墙,不能有重復(fù)元素
2. 引用類型
3. 有NSSet和NSMutableSet
4. 初始化
5. 常用操作:
set2.count 取集合長度
containsObject 查找(返回0或1)
for in 遍歷
Dictionary字典
1. 存儲key-value 無序
2. 有NSDictionary和NSMutableDictionary
3. 初始化
4. 索取元素
5. for in 遍歷