Criação de Fatias com Intervalos
Extraia subsequências sem fazer cópias.
Criação de Fatias com Intervalos é uma aula grátis de Swift Academy no CoddyKit. Esta é a aula 1 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.
Subscrição com um intervalo
Quando você acessa um array por índice usando um intervalo, o Swift não copia os elementos para um novo array. Em vez disso, ele retorna um ArraySlice que compartilha o armazenamento com o array original.
let numbers = [10, 20, 30, 40, 50]
let slice = numbers[1..<4]
print(slice)
print(type(of: slice))Intervalo semiaberto
O operador ..< cria um intervalo semiaberto. 1..<4 inclui os índices 1, 2 e 3, mas não o 4.
let letters = ["a", "b", "c", "d", "e"]
let middle = letters[1..<4]
print(middle)Fatiamento com intervalo fechado
Use ... para um intervalo fechado quando quiser incluir o limite superior. 1...3 abrange os índices 1, 2 e 3.
let scores = [88, 92, 75, 64, 99]
let closed = scores[1...3]
print(closed)Intervalos unilaterais
O Swift oferece suporte a intervalos unilaterais. arr[2...] significa do índice 2 até o fim, enquanto arr[..<2] significa tudo antes do índice 2.
let data = [1, 2, 3, 4, 5, 6]
print(data[3...])
print(data[..<3])As fatias são visões
Um ArraySlice é uma visão do array pai. Ele é criado com baixo custo, pois nenhum elemento é copiado até que você o altere ou converta.
let big = Array(1...1000)
let window = big[100..<105]
print(window)Iterando sobre uma fatia
Você pode percorrer uma fatia assim como um array. Os valores são os mesmos elementos armazenados pelo array pai.
let words = ["sun", "moon", "star", "comet"]
let pair = words[1..<3]
for w in pair {
print(w)
}Fatia de cadeias de caracteres
O fatiamento funciona com qualquer tipo de elemento. Aqui, extraímos um intervalo de um array de nomes.
let names = ["Ada", "Bob", "Cleo", "Dan", "Eve"]
let some = names[0..<2]
print(some)Combinando com count
Você pode criar um intervalo dinamicamente usando o count do array para obter os últimos elementos.
let nums = [5, 10, 15, 20, 25]
let lastTwo = nums[(nums.count - 2)..<nums.count]
print(lastTwo)Fatia vazia
Um intervalo cujos limites inferior e superior são iguais produz uma fatia vazia. Isso é válido e seguro.
let arr = [1, 2, 3, 4]
let empty = arr[2..<2]
print(empty)
print(empty.isEmpty)Fatiando e somando
Como uma fatia ainda está em conformidade com os mesmos protocolos, você pode chamar métodos como reduce diretamente nela.
let values = [2, 4, 6, 8, 10]
let sum = values[1..<4].reduce(0, +)
print(sum)Por que as fatias são importantes
As fatias permitem trabalhar com subseções de arrays grandes sem pagar o custo de copiá-los. Isso é ótimo para algoritmos como busca binária ou janelas deslizantes.
let series = Array(1...20)
let firstHalf = series[..<10]
let secondHalf = series[10...]
print(firstHalf.count, secondHalf.count)Verificação rápida
Teste sua compreensão do fatiamento por intervalo.
Recapitulação
Você aprendeu que acessar um array por índice usando um intervalo retorna um ArraySlice que compartilha o armazenamento com o array pai. O intervalo semiaberto ..< exclui o limite superior, o intervalo fechado ... o inclui, e os intervalos unilaterais obtêm um prefixo ou sufixo com baixo custo.
let r = [10, 20, 30, 40]
print(r[1..<3])
print(r[1...])
print(r[..<2])Aprenda Swift com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 122
- Aulas
- 409
Perguntas Frequentes
A aula “Criação de Fatias com Intervalos” é grátis?
Sim — o texto completo de “Criação de Fatias com Intervalos” é 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 “Criação de Fatias com Intervalos”?
Extraia subsequências sem fazer cópias. 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 1 de 4.
Quanto tempo leva a aula “Criação de Fatias com Intervalos”?
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
- Criação de Fatias com Intervalos
- Semântica de Índices de ArraySlice
- Conversão de Fatias de Volta para Arrays
- prefix, suffix e dropFirst