swift 元组 数组 字典 简单方法实现 小结

来源:互联网 发布:smtp 端口 587 编辑:程序博客网 时间:2024/06/05 23:05

/本篇文章请粘贴到MyPlayground里查看/
重点内容
var arra:[Int] = [1,2,2,5]

//获取数组中元素的索引位置 如果没有这个元素则返回nil
let oneInex = arra.index{ $0 == 5 }

let twoInex = arra.index{ $0 > 10 }

oneInex

twoInex

//数组筛选
arra.filter({

$0 > 3

})

arra.first

arra.last

//删除并返回数组的最后一个元素
let last = arra.popLast()

last

arra

///////////////////////////////////////////////////////////////////

var arrayMap = [1,2,2,3,2]

arrayMap.map({ 00 })

extension Array {

//map 实现func muMap<T>(_ transform:(Element) ->T)-> [T] {    var tmp: [T] = []    tmp.reserveCapacity(count)    for value in self {        tmp.append(transform(value))    }    return tmp}//filter 实现func myfilter(_ transform:(Element) -> Bool) -> [Element] {    var temp: [Element] = []    for model in self where (transform(model)) {        temp.append(model)    }    return temp}

}

print(arrayMap.muMap{ 00 })

//最小
arrayMap.min()

//最大
arrayMap.max()

let arrayMap1 = [1,2,3,6]

print(arrayMap1.myfilter({$0 > 3}))

//比较两个数组是否相等
arrayMap.elementsEqual(arrayMap1)

//比较两个数组 by后面跟的是 自定义比较规则
arrayMap.elementsEqual(arrayMap1, by: { 0==1 })

//判断数组是否以特定的序列开头
arrayMap.starts(with: [1,2])

//判断数组是否以特定的序列开头 by后面跟的是 自定义规则
arrayMap.starts(with: [1,2], by: { 0==1 })

//排序
arrayMap.sorted(by: >)

//获取满足和不满足条件的index

let index = arrayMap.partition(by: { $0 < 3 })

index

arrayMap[0..

0 0