Array: allSatisfy()
allSatisfy
,yapı olarakcontains
fonksiyonunu benzemektedir. Fonksiyon sonuç değeri olarak Bool
tipinde bir değer döndürür. Ancak en büyük farklılık ise dizi içerisindeki değerlerin tümünde aynı koşulu sağlaması ile true
döndürülmektedir. Bu durum contains
'den ayıran kısmıdır. Bir örnek vermek gerekirse:
Ögrencinin bir dönemdeki notlarından (0-100) oluşan bir dizimiz olsun.
let grades = [85, 74, 90, 64, 82]
50 puan üzerinde alınan notların dersi geçtiğini düşünelim. allSatisfy
ile dönem derslerinde başarılı olup olmadığını gösterecektir.
let pass = grades.allSatisfy { grade -> Bool in
return grade > 50
}
// true
Kısa versiyonu
let pass = grades.allSatisfy { $0 > 50 }
// true
Yine projelerimizde kullanılabilegimiz farklı bir örnek daha vermek gerekirse
Bir müzik uygulaması düşünelim ilk kez kullanan kullanıcılara, müzik tarzlarından en az 3 adet seçmesi isteniliyor gibi bir senaryo düşünelim.
let musicGenre = [classical, pop, rock, newage]
let allHaveAtLeastThree = musicGenre.allSatisfy({ $0.count >= 3 })
// true