A Instrução `switch`
Parte da seção Fundamentos do Journey de GO da Coddy — lição 39 de 109.
Vamos aprender sobre a instrução switch em Go, que fornece uma maneira mais limpa de verificar múltiplas condições em comparação ao uso de muitas instruções if/else if.
Primeiro, vamos criar um programa simples que avalia o número de um dia e imprime o nome do dia correspondente:
day := 3
switch day {
case 1:
fmt.Println("Monday")
case 2:
fmt.Println("Tuesday")
case 3:
fmt.Println("Wednesday")
default:
fmt.Println("Another day")
}
Após executar este código, o programa verificará o valor de day (que é 3) e o comparará com o case apropriado. Como day é igual a 3, o programa executará o código sob case 3 e mostrará na tela:
WednesdayA instrução switch verifica cada case em ordem até encontrar uma correspondência. Se nenhuma correspondência for encontrada, ela executa o código sob o caso default. Isso torna seu código muito mais limpo do que escrever múltiplas instruções if/else if.
Desafio
Inicianteswitch em Go. Você receberá uma variável que representa um dia da semana e precisará completar a instrução switch para exibir se é um dia útil ou fim de semana.Folha de consulta
A instrução switch em Go fornece uma maneira mais limpa de verificar múltiplas condições em comparação ao uso de muitas instruções if/else if.
Sintaxe básica:
switch variable {
case value1:
// código para executar
case value2:
// código para executar
default:
// código para executar se não houver correspondência
}
Exemplo:
day := 3
switch day {
case 1:
fmt.Println("Monday")
case 2:
fmt.Println("Tuesday")
case 3:
fmt.Println("Wednesday")
default:
fmt.Println("Another day")
}
A instrução switch verifica cada case em ordem até encontrar uma correspondência. Se nenhuma correspondência for encontrada, ela executa o código sob o caso default.
Experimente você mesmo
package main
import "fmt"
func main() {
// Esta variável representa um dia da semana
day := "Saturday"
// TODO: Complete a instrução switch para verificar se o dia é um dia útil ou fim de semana
switch day {
// Adicione casos para os dias de fim de semana (Saturday e Sunday) e imprima "It's the weekend!"
// Adicione um caso padrão para dias úteis e imprima "It's a weekday."
}
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores de Comparação e Lógicos
Operadores de Comparação - Parte 1Operadores de Comparação - Parte 2Operador Lógico ANDOperador Lógico OROperador Lógico NOTFundamentos de Precedência de OperadoresRecapitulação - Fazendo Comparações7Fluxo de Controle: Loops
O Loop `for` ExplicadoLoop For - BásicoLoop For - Apenas CondiçãoA Palavra-chave `break`A Palavra-chave `continue`Loops AninhadosRecapitulação - Repetindo Ações2Variáveis e Tipos de Dados Básicos
O que é uma variávelInferência de Tipo com `:=`Inteiros (int)Números de Ponto FlutuanteBooleanosStringsValores ZeroConstantesConvenções de NomenclaturaRecapitulação - Variáveis e Tipos5Entrada/Saída Básica
Saída FormatadaVerbos de FormataçãoImprimindo TiposObtendo Entrada Básica do UsuárioRecapitulação - Entrada e Saída8Funções
Entendendo FunçõesDeclarando uma FunçãoChamando FunçõesParâmetros de FunçãoRetornando um Único ValorRetornando Múltiplos ValoresValores de Retorno NomeadosFundamentos de Escopo de FunçãoRecapitulação - Criando Código Reutilizável3Operadores Básicos
Operadores AritméticosOperador de DivisãoO Operador MóduloOperador de AtribuiçãoOperadores de Atribuição CompostaIncremento e DecrementoRecapitulação - Cálculos6Fluxo de Controle: Condicionais
A Instrução `if`A Palavra-chave `else`A Palavra-chave `else if`Sombreamento de Variáveis no `if`Inicializando VariáveisA Instrução `switch`Switch com ExpressõesSwitch sem ExpressãoA Palavra-chave `fallthrough`Recapitulação - Tomando Decisões