Junior — Middle
Veri koleksiyonlarını işlerken Flat Map metodunun çalışma prensibini ve normal Map'ten farkını açıklayın.
sobes.tech yapay zeka
AI'dan gelen yanıt
map yöntemi, koleksiyonun her öğesini bir fonksiyon uygulayarak dönüştürür ve sonuçlar dizisi döndürür. Eğer fonksiyon bir koleksiyon döndürürse, sonuç bir koleksiyonlar dizisi olur.
flatMap önce fonksiyonu her öğeye uygular, tıpkı map gibi, ancak ardından iç içe koleksiyonları tek bir düz diziye "düzleştirir" (flatten).
Örnek:
let numbers = [1, 2, 3]
// fonksiyonla map, bu fonksiyon bir dizi döndürür
let mapped = numbers.map { Array(repeating: $0, count: $0) }
// mapped = [[1], [2, 2], [3, 3, 3]]
// aynı fonksiyonla flatMap
let flatMapped = numbers.flatMap { Array(repeating: $0, count: $0) }
// flatMapped = [1, 2, 2, 3, 3, 3]
Bu nedenle, flatMap, fonksiyonun bir koleksiyon döndürdüğü durumlarda, iç içe diziler olmadan tek bir düz dizi elde etmek için kullanışlıdır.