Intervalos como Coleções
Aplique map e filter a sequências de intervalos.
Intervalos como Coleções é uma aula grátis de Swift Academy no CoddyKit. Esta é a aula 4 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.
Os intervalos são sequências
Um intervalo é mais do que uma extensão de números; ele é uma sequência que você pode transformar com métodos de coleção, como map e filter.
let squares = (1...5).map { $0 * $0 }
print(squares)Mapeando um intervalo
(1...n).map { ... } transforma cada número em um novo valor, produzindo um array. Observe os parênteses ao redor do intervalo.
let doubled = (1...4).map { $0 * 2 }
print(doubled)Por que usar os parênteses
Você precisa envolver o intervalo em parênteses antes de chamar um método; caso contrário, o Swift interpreta a sintaxe incorretamente. (1...5).map está correto.
let labels = (1...3).map { "Item \($0)" }
print(labels)Filtrando um intervalo
filter mantém apenas os valores que satisfazem uma condição, retornando um array de correspondências.
let evens = (1...10).filter { $0 % 2 == 0 }
print(evens)Reduzindo um intervalo
reduce combina todos os valores em um só. Aqui, somamos os números de 1 a 100.
let total = (1...100).reduce(0, +)
print(total)Convertendo em um array
Envolver um intervalo em Array(...) materializa cada valor como parte de um array armazenado.
let nums = Array(1...5)
print(nums)
print(nums.count)forEach em um intervalo
Você pode chamar forEach para executar um fechamento para cada valor, de modo semelhante a um loop for.
(1...3).forEach { n in
print("Tick \(n)")
}Encadeando operações
Como cada operação retorna uma coleção, você pode encadear filter e depois map.
let result = (1...10).filter { $0 % 2 == 0 }.map { $0 * $0 }
print(result)Criando dados para consulta
Mapear um intervalo é uma maneira rápida de gerar dados de teste ou tabelas de consulta.
let table = (1...5).map { (n: $0, square: $0 * $0) }
for row in table {
print("\(row.n) -> \(row.square)")
}contains e agregações
Os intervalos também oferecem consultas agregadas, como contains, min e max.
let r = 5...15
print(r.contains(10))
print(r.min() ?? 0)
print(r.max() ?? 0)Contando correspondências
Combine filter com count para contar quantos valores atendem a uma condição.
let multiplesOf3 = (1...30).filter { $0 % 3 == 0 }.count
print(multiplesOf3)Verificação rápida
Teste os intervalos como coleções.
Recapitulação: intervalos como coleções
Os intervalos são sequências, portanto você pode chamar map, filter, reduce e forEach neles (lembre-se dos parênteses). Use Array(range) para materializar os valores.
print((1...5).map { $0 * $0 })Perguntas Frequentes
A aula “Intervalos como Coleções” é grátis?
Sim — o texto completo de “Intervalos como Coleções” é 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 “Intervalos como Coleções”?
Aplique map e filter a sequências de intervalos. 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 4 de 4.
Quanto tempo leva a aula “Intervalos como Coleções”?
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
- Intervalos Fechados e Semifechados
- Intervalos de Um Só Lado
- Contagem com stride(from:to:by:)
- Intervalos como Coleções