Estruturas de controle e funções
Aprenda sobre expressões condicionais (if/else), laços e definição de funções simples em Scala.
Estruturas de controle e funções é uma aula grátis de Scala for Backend Engineering & Functional Programming no CoddyKit. Esta é a aula 3 de 3. 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 3 aulas no total.
Guie o caminho do seu código
Imagine seu programa como uma jornada. Às vezes, você precisa tomar decisões, como virar à esquerda ou à direita. Em outras ocasiões, precisa repetir uma ação, como caminhar vários passos.
As estruturas de controle são ferramentas que permitem ao seu código tomar essas decisões e repetir ações. Elas determinam a ordem em que as instruções são executadas, orientando o fluxo do seu programa.
Lógica condicional: If/Else
A estrutura de controle mais básica é a expressão if/else. Ela permite que seu programa execute diferentes blocos de código dependendo de uma condição ser verdadeira ou falsa.
Em Scala, if é uma expressão, o que significa que sempre retorna um valor. Esse é um recurso poderoso em comparação com muitas outras linguagens, nas quais if é apenas uma instrução.
If/Else em ação
Vamos ver como if/else funciona. Este exemplo verifica se um número é maior que 5 e atribui uma string com base no resultado.
object Main {
def main(args: Array[String]): Unit = {
val x = 10
val result = if (x > 5) {
"Greater"
} else {
"Smaller"
}
println(result)
}
}Lidando com várias condições
E se você tiver mais de duas possibilidades? É possível encadear várias condições usando else if para criar caminhos de decisão mais complexos.
O código verificará as condições na ordem. O primeiro resultado avaliado como true terá seu bloco de código executado, e os demais serão ignorados.
Repetindo ações: laços While
Às vezes, você precisa repetir um bloco de código até que determinada condição deixe de ser atendida. É nesse momento que os laços são úteis.
O laço while executa repetidamente um bloco de código enquanto sua condição permanecer true. Tenha cuidado para não criar um laço infinito mantendo a condição sempre verdadeira!
Exemplo de laço While
Este simples laço while imprime uma mensagem três vezes. Observe como a variável i é atualizada dentro do laço para, eventualmente, tornar falsa a condição i < 3.
object Main {
def main(args: Array[String]): Unit = {
var i = 0
while (i < 3) {
println(s"Count: $i")
i = i + 1
}
}
}Iterando com expressões For
A expressão for do Scala é extremamente versátil para iteração. Ela pode iterar sobre intervalos, coleções e até filtrar valores.
Por enquanto, vamos nos concentrar em iterar sobre um intervalo simples de números. A palavra-chave to cria um intervalo inclusivo.
Exemplo de código com laço For
Veja um laço for que itera de 1 a 3 (inclusive) e imprime cada número. Essa é uma forma comum de realizar tarefas repetitivas um número conhecido de vezes.
object Main {
def main(args: Array[String]): Unit = {
for (i <- 1 to 3) {
println(s"Number: $i")
}
}
}Definindo suas próprias funções
Funções são blocos de código projetados para realizar uma tarefa específica. Elas ajudam a organizar seu código, torná-lo reutilizável e facilitar sua compreensão.
Em Scala, você define uma função usando a palavra-chave def, seguida por seu nome, parâmetros (com seus tipos) e um tipo de retorno opcional. Se a função retornar Unit (nada), o tipo de retorno pode ser omitido.
Exemplo de função simples
Vamos definir uma função chamada add que recebe dois inteiros e retorna a soma deles. Observe como chamamos a função a partir do nosso método main.
object Main {
def add(a: Int, b: Int): Int = {
a + b
}
def main(args: Array[String]): Unit = {
val sum = add(5, 3)
println(s"The sum is: $sum")
}
}Verificação rápida: fluxo de controle
O que o código Scala a seguir imprimirá?
Recapitulação: controle e funções
Parabéns! Nesta lição, você aprendeu a orientar a execução do seu código:
- Expressões
if/elsepara tomar decisões, retornando um valor com base em condições. - Laços
whilepara repetir ações enquanto uma condição for verdadeira. - Expressões
forpara iterar sobre intervalos e outras sequências. - Definição de funções para encapsular blocos de código reutilizáveis.
Esses são componentes fundamentais de qualquer programa e permitem criar aplicações dinâmicas e organizadas!
Perguntas Frequentes
A aula “Estruturas de controle e funções” é grátis?
Sim — o texto completo de “Estruturas de controle e funçõ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 Scala for Backend Engineering & Functional Programming, atualize para CoddyKit PRO. O curso de Scala for Backend Engineering & Functional Programming inclui 3 aulas no total.
O que vou aprender em “Estruturas de controle e funções”?
Aprenda sobre expressões condicionais (if/else), laços e definição de funções simples em Scala. 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 3.
Quanto tempo leva a aula “Estruturas de controle e funçõ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 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
- Primeiros passos com Scala
- Sintaxe e tipos básicos
- Estruturas de controle e funções