1.数组的创建
let
2.数组的遍历
1>.for-in, forEach
let
2>.enumerated遍历同时得到索引和值
let
3>.Iterator遍历数组
let
4>.indices获得数组的索引
let
3.查找操作
- contains(_:)判断数组是否包含给定的元素
- contains(where:)判断数组是否包含符合给定条件的元素
- allSatisfy(_:)判断数组的每一个元素都符合给定的条件
let
- firstIndex(of:)返回给定元素在数组中出现的第一个位置(optional)
- lastIndex(of:)返回给定元素在数组中出现的最后一个位置(optional)
- first(where:)返回第一个符合给定条件的元素(optional)
- last(where:)返回最后一个符合给定条件的元素(optional)
- min()返回数组中的最小的元素
- max()返回数组中的最大的元素
- min(by:)利用给定方式比较元素并返回数组中的最小的元素
- max(by:)利用给定方式比较元素并返回数组中的最大的元素
let
4.数组中添加和删除元素
1>.添加元素
- append(_:)在末尾添加一个元素
- append(contentsOf:)在末尾添加多个元素
var
2>.在指定位置插入元素
- insert(_: at:) 在指定的位置插入一个元素
- insert(contentsOf: at:) 在指定位置插入多个元素
var
3>.移除元素
- remove(at:)移除并返回指定位置的一个元素
- removeFirst()移除并返回数组的第一个元素
- popFirst()移除并返回数组中的第一个元素(optional),数组为空则返回nil
- removeLast(:)移除数组后面的多个元素
- removeFirst(:)移除数组前面的多个元素
var
- removeSubrange(_:)移除数组中给定范围的元素
- removeAll()移除数组中的所有元素
var
5.数组的重排操作
1>.数组的随机化
- shuffle() 在元数组上将数组元素打乱,只能作用在数组变量上
var
- shuffled() 返回原数组的随机化数组,可以作用在数组变量和常量上
let
2>.逆序
- reverse()在原数组上将数组逆序,只能作用于数组变量上
var
- reversed()返回原数组的逆序“集合表示”,可作用于数组变量上和常量上,不会分配新的内存空间
let
3>.数组的分组
- partition(by belongsInSecondPartition: (Element) throws -> Bool)将数组以某个条件分组,前半部分是不符而条件的元素,后半部分是符合条件的元素
var
4>.排序
- sort()在原数组上将元素排序,只能作用于数组变量上
- sorted()返回原数组的排序结果数组,可以作用在数组变量和常量上
var
5>.交换数组的两个元素
- swapAt(_: _:)交换指定位置的两个元素
var
6.数组的拼接操作
1>.字符串的拼接
- joined()凭借字符串数组里面的所有元素为一个字符串
- joined(separator:)以给定的分隔符拼接字符串数组里的所有元素为一个字符串
var
2>.Sequence数组的拼接
- joined()拼接数组里面的所有元素为一个更大的Sequence
- joined(separator:)以给定的分隔符拼接数组里面的所有元素为一个更大的Sequence
let
7.几个常用方法
// 1.map:根据映射规则 返回新的数组
8.数组的底层探究
一张图胜过千言万语