我們先來定義一個常量整型數組
let array = [5, 4, 3, 1, 2]
過濾器(filter)使用之篩選出大于3的值
let resultArray = array.filter { (item) -> Bool in
return item > 3
}
print(resultArray) // [5, 4]
簡化可以這樣寫
let resultArray = array.filter { return $0 > 3 }
print(resultArray) // [5, 4]
閉包中的‘return’是可以省略的
過濾器(filter)使用之篩選出能被2整除的值
let resultArray = array.filter { (item) -> Bool in
return item%2 == 0
}
print(resultArray) // [4, 2]
簡化可以這樣寫
let resultArray = array.filter { return $0%2 == 0 }
print(resultArray) // [4, 2]
總結
1、過濾器(filter)使用并不複雜,很好掌握。
2、過濾器(filter)不局限于以上的使用,望能舉一反三。
3、過濾器(filter)需要定義一個變量(或常量)去接收過濾後的結果。
4、以上例子往往是通過for來周遊數組去實作的,有了過濾器(filter)可以更簡單的實作,也使代碼更整潔,建議合理使用過濾器(filter)。
更多更詳細教程請通路個人站點: 碼出一個長城