0Pricing
Swift Academy · Aula

Iteração e transformação de dicionários

Use mapValues, filter e merge, e agrupe dados com dicionários.

Iteração e transformação de dicionários é uma aula grátis de Swift Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Swift Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Swift Academy inclui 4 aulas no total.

Boas-vindas

Os dicionários são tipos `Sequence` completos. Eles aceitam `for-in`, `map`, `filter`, `reduce` e muito mais — oferecendo um conjunto de ferramentas funcionais para trabalhar com dados indexados por chave.

Iteração com for-in

```swift let prices = ["apple":1.5,"banana":0.8] for (fruit, price) in prices { print("\(fruit): $\(price)") } ``` A ordem não é garantida — ordene com `prices.sorted { $0.key < $1.key }` para obter determinismo.

mapValues

```swift let scores = ["Alice":80,"Bob":90] let doubled = scores.mapValues { $0 * 2 } // ["Alice":160,"Bob":180] ``` `mapValues` mantém as chaves intactas e transforma apenas os valores.

Filtrando dicionários

```swift let d = ["a":1,"b":5,"c":3] let big = d.filter { $0.value > 2 } // ["b":5,"c":3] ```

Agrupando com um dicionário

```swift let words = ["apple","ant","ball","banana"] let grouped = Dictionary(grouping: words) { $0.first! } // ["a":["apple","ant"],"b":["ball","banana"]] ``` Um padrão extremamente útil para categorizar dados.

Reduzindo para um dicionário

```swift let nums = [1,2,3,4,5] let freq = nums.reduce(into: [Int:Int]()) { $0[$1, default:0] += 1 } // [1:1,2:1,3:1,4:1,5:1] ```

Iteração por chaves ordenadas

```swift let d = ["c":3,"a":1,"b":2] for key in d.keys.sorted() { print("\(key): \(d[key]!)") } // a:1, b:2, c:3 ```

compactMapValues

```swift let raw = ["a":"1","b":"two","c":"3"] let nums = raw.compactMapValues { Int($0) } // ["a":1,"c":3] — "b" dropped ``` Transforma valores e remove as entradas cuja transformação retorna nil.

Reduzindo a um único valor

```swift let sales = ["Q1":1000,"Q2":1200,"Q3":800] let total = sales.values.reduce(0, +) // 3000 let max = sales.values.max()! // 1200 ```

Dicionário a partir de duas matrizes

```swift let keys = ["a","b","c"] let vals = [1, 2, 3] let d = Dictionary(uniqueKeysWithValues: zip(keys, vals)) // ["a":1,"b":2,"c":3] ```

Verificação rápida

Qual método transforma os valores de um dicionário mantendo as chaves iguais?

Recapitulação

Principais conclusões: • `for (k,v) in dict` — percorra o dicionário; ordene as chaves para obter determinismo • `mapValues` — transforma os valores e mantém as chaves • `filter` — retorna um novo dicionário com os pares correspondentes • `Dictionary(grouping:by:)` — inicializador poderoso para agrupamento • `compactMapValues` — transforma e remove os valores nil A seguir: operações de conjuntos.

Perguntas Frequentes

A aula “Iteração e transformação de dicionários” é grátis?

Sim — o texto completo de “Iteração e transformação de dicionários” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Swift Academy, atualize para CoddyKit PRO. O curso de Swift Academy inclui 4 aulas no total.

O que vou aprender em “Iteração e transformação de dicionários”?

Use mapValues, filter e merge, e agrupe dados com dicionários. Você pratica Swift Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Swift Academy?

Nenhuma experiência prévia é necessária. Swift Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Iteração e transformação de dicionários”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Swift Academy?

Sim. Cada aula de Swift Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Operações CRUD em dicionários e acesso por subscrito
  2. Iteração e transformação de dicionários
  3. Operações com conjuntos: união, interseção e diferença
  4. Escolha entre Array, Dictionary e Set
← Voltar para Swift Academy