Sobes.tech
Intern

Qual é a sua função favorita na linguagem Swift?

sobes.tech IA

Resposta da IA

A minha função favorita é o flatMap para coleções.

Permite transformar uma coleção que contém valores opcionais ou coleções aninhadas numa coleção plana, descartando nil ou unindo os elementos aninhados.

Exemplo com opcionais:

// Array de strings, algumas das quais podem ser nil
let strings: [String?] = ["Hello", nil, "World", nil, "Swift"]

// Usar flatMap para remover nil e obter um array de strings não opcionais
let nonNilStrings = strings.flatMap { $0 }

// nonNilStrings agora é ["Hello", "World", "Swift"]

Exemplo com coleções aninhadas:

// Array de arrays de números
let nestedArrays = [[1, 2], [3, 4, 5], [6]]

// Usar flatMap para criar um array plano único
let flatArray = nestedArrays.flatMap { $0 }

// flatArray agora é [1, 2, 3, 4, 5, 6]

flatMap torna o código mais limpo e expressivo ao trabalhar com essas estruturas de dados, eliminando a necessidade de escrever loops complexos ou usar compactMap.