Swift 陣列 contains 和 allSatisfy 解說

Swift 的陣列有兩個超常用的函式,分別為 contains 和 allSatisfy,而這兩個函式常常讓人搞混,接下來我們就透過實際的例子來說明一下這兩個函式吧!

swift 1

假設你要判斷全班是否都考試及格,原始分別為 40、70、60,那麼你這時可以用 allSatisfy 這個函式。allSatisfy 在陣列全部滿足條件時會回傳 true,也就是以下列的例子來說,會回傳 false。

let scores = [40, 70, 60]
let isAllPass = scores.allSatisfy { $0 >= 60 }
/// return false

但是,如果你的學生經過你的複習,考試進步了,以下列例子來說,則會回傳 true。

let scores = [90, 80, 100]
let isAllPass = scores.allSatisfy { $0 >= 60 }
/// return true

而 contains 就比較簡單,就如同他的名字一樣,判斷陣列中是否包含有物件滿足條件式,以下列例子來說,只要有任何一個學生的分數大於 60 分,就會回傳 true 囉

let scores = [40, 70, 60]
let isSomeonePass = scores.contains { $0 >= 60 }
/// return true
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments