Intern
Jaka jest twoja ulubiona funkcja w języku Swift?
sobes.tech AI
Odpowiedź od AI
Moja ulubiona funkcja to flatMap dla kolekcji.
Pozwala przekształcić kolekcję zawierającą wartości opcjonalne lub zagnieżdżone kolekcje w kolekcję płaską, odrzucając nil lub łącząc zagnieżdżone elementy.
Przykład z opcjonalami:
// Tablica łańcuchów, z których niektóre mogą być nil
let strings: [String?] = ["Hello", nil, "World", nil, "Swift"]
// Używamy flatMap, aby usunąć nil i uzyskać tablicę łańcuchów nieopcjonalnych
let nonNilStrings = strings.flatMap { $0 }
// nonNilStrings to teraz ["Hello", "World", "Swift"]
Przykład z zagnieżdżonymi kolekcjami:
// Tablica tablic liczb
let nestedArrays = [[1, 2], [3, 4, 5], [6]]
// Używamy flatMap, aby utworzyć jedną płaską tablicę
let flatArray = nestedArrays.flatMap { $0 }
// flatArray to teraz [1, 2, 3, 4, 5, 6]
flatMap sprawia, że kod jest bardziej czysty i wyrazisty podczas pracy z takimi strukturami danych, eliminując potrzebę pisania złożonych pętli lub używania compactMap.