Scala for Backend Engineering & Functional Programming · Aula

Construindo intervalos

Gere sequências de números.

Aula 3 de 413 etapas

Construindo intervalos é uma aula grátis de Scala for Backend Engineering & Functional Programming no CoddyKit. Esta é a aula 3 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 Scala for Backend Engineering & Functional Programming, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Scala for Backend Engineering & Functional Programming inclui 4 aulas no total.

O que é um intervalo

Um intervalo representa uma sequência ordenada de números inteiros igualmente espaçados, como 1, 2, 3, 4, 5.

Os intervalos são eficientes no uso de memória porque armazenam apenas o início, o fim e o passo, não todos os números. Eles são ideais para contagens e laços.

A palavra-chave to

O intervalo mais simples usa to, que inclui os dois limites.

Assim, 1 to 5 abrange 1, 2, 3, 4 e 5. O número final faz parte do intervalo.

val r = 1 to 5
println(r)

Intervalos inclusivos

Um intervalo com to é chamado de inclusivo porque contém seu limite superior.

Para ver os números reais em vez da descrição compacta, você pode converter o intervalo em uma lista.

val r = 1 to 5
println(r.toList)

A palavra-chave until

Use until quando quiser parar imediatamente antes do limite superior.

Assim, 1 until 5 produz 1, 2, 3, 4 e deixa 5 de fora. O valor final não está incluído.

val r = 1 until 5
println(r.toList)

to versus until

A diferença está apenas no último número. to inclui o fim; until o exclui.

1 to 5 tem cinco elementos, enquanto 1 until 5 tem quatro. Escolher o correto evita erros de deslocamento de uma posição.

println((1 to 5).toList)
println((1 until 5).toList)

Avançando com by

Por padrão, um intervalo avança de um em um. Adicione by para alterar o tamanho do passo.

Aqui, contamos de 0 a 10 em saltos de 2, produzindo os números pares.

val evens = 0 to 10 by 2
println(evens.toList)

Fazendo contagem regressiva

Um passo negativo permite que um intervalo conte para trás.

Com by -1, o intervalo começa alto e diminui. Essa é a forma padrão de iterar na ordem inversa.

val down = 5 to 1 by -1
println(down.toList)

Tamanho do intervalo

Você pode perguntar a um intervalo quantos elementos ele contém usando size.

Isso é calculado instantaneamente a partir dos limites e do passo, sem listar todos os números.

val r = 0 to 20 by 5
println(r.size)

Verificando a associação

O método contains informa se um valor está dentro de um intervalo.

Ele também respeita o passo; portanto, 3 não está contido em um intervalo de passo 2 formado por números pares.

val evens = 0 to 10 by 2
println(evens.contains(4))
println(evens.contains(3))

Intervalos são coleções

Um intervalo se comporta como qualquer outra sequência, então você pode aplicar map ou sum a ele.

Aqui, elevamos cada número ao quadrado e somamos os resultados, tudo sem criar primeiro uma lista explícita.

val total = (1 to 4).map(n => n * n).sum
println(total)

Intervalos vazios

Se o início já estiver depois do fim, o intervalo será simplesmente vazio.

Por exemplo, 5 until 5 não contém nada. Intervalos vazios são válidos e não produzem elementos quando percorridos.

val r = 5 until 5
println(r.isEmpty)

Verificação rápida

Teste o que você aprendeu sobre a criação de intervalos.

Recapitulação

Você cria intervalos com to (inclusivo) e until (exclusivo), ajusta o passo com by e faz contagens regressivas com um passo negativo.

Os intervalos são coleções leves que oferecem size, contains e map. A seguir, você os usará para controlar laços.

Grátis para começar

Aprenda Scala 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
39
Aulas
143

Perguntas Frequentes

A aula “Construindo intervalos” é grátis?

Sim — o texto completo de “Construindo 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 Scala for Backend Engineering & Functional Programming, atualize para CoddyKit PRO. O curso de Scala for Backend Engineering & Functional Programming inclui 4 aulas no total.

O que vou aprender em “Construindo intervalos”?

Gere sequências de números. Você pratica Scala for Backend Engineering & Functional Programming 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 Scala for Backend Engineering & Functional Programming?

Nenhuma experiência prévia é necessária. Scala for Backend Engineering & Functional Programming 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 3 de 4.

Quanto tempo leva a aula “Construindo 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 Scala for Backend Engineering & Functional Programming?

Sim. Cada aula de Scala for Backend Engineering & Functional Programming 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. Criando tuplas
  2. Desestruturando tuplas
  3. Construindo intervalos
  4. Intervalos em laços
← Voltar para Scala for Backend Engineering & Functional Programming