Intern
Qual è la tua funzione preferita nel linguaggio Swift?
sobes.tech AI
Risposta dell'AI
La mia funzione preferita è flatMap per le collezioni.
Permette di trasformare una collezione contenente valori opzionali o collezioni annidate in una collezione piatta, ignorando nil o unendo gli elementi annidati.
Esempio con opzionali:
// Array di stringhe, alcune delle quali possono essere nil
let strings: [String?] = ["Hello", nil, "World", nil, "Swift"]
// Usare flatMap per rimuovere nil e ottenere un array di stringhe non opzionali
let nonNilStrings = strings.flatMap { $0 }
// nonNilStrings ora è ["Hello", "World", "Swift"]
Esempio con collezioni annidate:
// Array di array di numeri
let nestedArrays = [[1, 2], [3, 4, 5], [6]]
// Usare flatMap per creare un array piatto unico
let flatArray = nestedArrays.flatMap { $0 }
// flatArray ora è [1, 2, 3, 4, 5, 6]
flatMap rende il codice più pulito ed espressivo quando si lavora con queste strutture di dati, eliminando la necessità di scrivere cicli complessi o usare compactMap.