Instrução Switch em Go

Golang como a maioria das outras linguagens de programação tem a instrução switch . A instrução switch em Golang  permite que você avalie uma variável ou expressão em vários casos e é frequentemente usada ao escrever várias instruções if-else, o que faz com que o código pareça feio e repetitivo.

Instrução Switch em Go

Em Go, a instrução switch é uma instrução de ramificação multidirecional que efetivamente direciona a execução com base no valor (ou tipo) de uma expressão. Existem dois tipos principais de instruções switch em Go :

  • Troca de expressão
  • Interruptor de tipo

Por exemplo:

package main
import "fmt"

func main() {
    day := 4
    switch day {
    case 1:
        fmt.Println("Monday")
    case 2:
        fmt.Println("Tuesday")
    case 3:
        fmt.Println("Wednesday")
    case 4:
        fmt.Println("Thursday")
    case 5:
        fmt.Println("Friday")
    default:
        fmt.Println("Invalid day")
    }
}

Sintaxe da instrução Switch em Golang

switch optstatement; optexpression {
case expression1:
    // Khối code
case expression2:                                                          # Expression Switch
    // Khối code
default:
    // Khối code
}

switch var := interfaceValue.(type) {
case type1:
    // Khối code
case type2:                                                                    # Type Switch
    // Khối code
default:
    // Khối code
}

Troca de expressão

O Expression Switch avalia uma expressão e alterna para um caso com base no valor dessa expressão. Se nenhuma expressão for fornecida, o switch assumirá o valor padrão true .

Sintaxe

switch optstatement; optexpression {
case expression1:
    // Khối code
case expression2:
    // Khối code
default:
    // Khối code
}

optstatement: Declaração opcional (por exemplo, declaração de variável).
optexpression: Expressão opcional (se omitida, o padrão é true ).

Exemplo com comando opcional

Aqui introduz uma declaração opcional que declara uma variável de dia . A instrução switch então avalia o dia de acordo com diferentes casos.

package main
import "fmt"
func main() {
    switch day := 4; day {
    case 1:
        fmt.Println("Monday")
    case 2:
        fmt.Println("Tuesday")
    case 3:
        fmt.Println("Wednesday")
    case 4:
        fmt.Println("Thursday")
    case 5:
        fmt.Println("Friday")
    default:
        fmt.Println("Invalid day")
    }
}

Resultado:

Thursday

Exemplo com expressão opcional

Se nenhuma expressão for especificada, a instrução switch em Golang assumirá que a expressão é verdadeira. Isso nos permite usar condições booleanas em instruções case.

package main
import "fmt"

func main() {
    day := 4

    switch {
    case day == 1:
        fmt.Println("Monday")
    case day == 4:
        fmt.Println("Thursday")
    case day > 5:
        fmt.Println("Weekend")
    default:
        fmt.Println("Invalid day")
    }
}

Resultado

Thursday

Interruptor de tipo

O Type Switch é usado para ramificar o tipo de um valor de interface, em vez do seu valor. Isto é especialmente útil ao lidar com variáveis ​​de tipo desconhecido.

Sintaxe

switch var := interfaceValue.(type) {
case type1:
    // Khối code
case type2:
    // Khối code
default:
    // Khối code
}

Por exemplo:

Este exemplo usa a mesma variável de dia , mas encapsulada em interface{} para ilustrar a conversão de tipo.

package main
import "fmt"
func main() {
    var day interface{} = 4
    switch v := day.(type) {
    case int:
        switch v {
        case 1:
            fmt.Println("Monday")
        case 2:
            fmt.Println("Tuesday")
        case 3:
            fmt.Println("Wednesday")
        case 4:
            fmt.Println("Thursday")
        case 5:
            fmt.Println("Friday")
        default:
            fmt.Println("Invalid day")
        }
    default:
        fmt.Printf("Unknown type: %T\n", v)
    }
}

Resultado:

Thursday
Sign up and earn $1000 a day ⋙

Leave a Comment

Argumentos de função em Golang

Argumentos de função em Golang

Go suporta duas maneiras principais de passar argumentos: Passagem por valor e Passagem por referência. Go usa passagem por valor por padrão.

Função retornando múltiplos valores em Golang

Função retornando múltiplos valores em Golang

Na linguagem Go, você pode retornar vários valores de uma função, usando a instrução return. Em outras palavras, em uma função, uma instrução return pode retornar vários valores.

Casos a serem conhecidos ao usar instruções de seleção em Golang

Casos a serem conhecidos ao usar instruções de seleção em Golang

Neste artigo, aprenderemos como usar o caso padrão para evitar deadlock. Mas primeiro, vamos descobrir o que é o caso de deadlock ao usar o comando select do Golang?

Estruturas e campos anônimos em Golang

Estruturas e campos anônimos em Golang

Estruturas anônimas em Golang são estruturas temporárias sem nomes usadas para propósitos únicos, enquanto campos anônimos permitem a incorporação de campos sem nome.

Como usar Runa em Golang

Como usar Runa em Golang

O que são Runas em Golang? Como usar Runa em Golang? O artigo lhe dará a resposta.

Como usar operadores em Golang

Como usar operadores em Golang

Operadores nos permitem realizar diferentes tipos de operações em operandos. Na linguagem Go, os operadores podem ser classificados com base em suas diferentes funções.

Identificador vazio em Golang

Identificador vazio em Golang

_(sublinhado) em Golang é chamado de Identificador em Branco. Identificador é um nome definido pelo usuário para componentes de programa usados ​​para fins de identificação.

Como criar um programa básico em Golang

Como criar um programa básico em Golang

Olá, mundo! é o primeiro programa básico em qualquer linguagem de programação. Você pode escrever este primeiro programa em Golang seguindo os passos abaixo.

Como instalar o Go no Windows

Como instalar o Go no Windows

O Golang pode ser facilmente instalado no Windows. Abaixo está um guia passo a passo detalhado para instalar o Golang no Windows.

Métodos com o mesmo nome em Golang

Métodos com o mesmo nome em Golang

Golang permite criar dois ou mais métodos com o mesmo nome no mesmo pacote, mas os receptores desses métodos devem ser de tipos diferentes.

Funções em Go

Funções em Go

Em Go, funções são blocos de código que executam tarefas específicas, que podem ser reutilizadas em todo o programa para economizar memória, melhorar a legibilidade e economizar tempo.

Escopo de Variável em Go

Escopo de Variável em Go

O escopo de uma variável em Golang determina a parte do programa onde essa variável é acessível. Em Go, todos os identificadores têm um escopo lexical que é determinado em tempo de compilação.

Instruções de controle em Golang (if, if-else, Nested-if)

Instruções de controle em Golang (if, if-else, Nested-if)

Quais declarações condicionais Golang possui? Como usar instruções condicionais na programação Go? Vamos descobrir juntos!

Operador de declaração de variável curta em Go

Operador de declaração de variável curta em Go

O operador de declaração curta de variáveis ​​(:=) em Golang é usado para criar variáveis ​​com um nome e valor inicial exclusivos. Aqui está o que você precisa saber sobre o operador de declaração de variável curta em Golang.

Últimos códigos do Mobile Legends 4/2025

Últimos códigos do Mobile Legends 4/2025

Descubra os últimos códigos de presente do Mobile Legends para ganhar presentes atraentes totalmente grátis.

Como ajustar os botões do CS 1.1 e consertar os botões do Half Life

Como ajustar os botões do CS 1.1 e consertar os botões do Half Life

Esta é a maneira mais fácil e familiar de ajustar os botões do CS 1.1 para muitos jogadores. Além disso, você também pode editar teclas de função ou ações dependendo dos seus hábitos de jogo.

Lançamento do Intel Graphics Software: Kit de ferramentas abrangente para gerenciamento de placas gráficas Intel

Lançamento do Intel Graphics Software: Kit de ferramentas abrangente para gerenciamento de placas gráficas Intel

A Intel chama o novo aplicativo Intel Graphics Software de um “utilitário completo que ajuda os usuários a otimizar jogos, baixar novos drivers gráficos e ajustar as configurações do driver jogo a jogo.

OpenAI anuncia o plano ChatGPT Pro por incríveis US$ 200 por mês

OpenAI anuncia o plano ChatGPT Pro por incríveis US$ 200 por mês

Atualmente, a OpenAI oferece quatro níveis de assinatura do ChatGPT para atender às necessidades de diferentes grupos de clientes.

Lindas plantas e flores contêm veneno mortal

Lindas plantas e flores contêm veneno mortal

Flores venenosas não são raras no mundo. Este artigo resumirá para você flores venenosas que têm uma aparência bonita, mas podem ser mortais.

Admire as belas imagens da Terra tiradas pela sonda Blue Ghost

Admire as belas imagens da Terra tiradas pela sonda Blue Ghost

Já se passou uma semana desde que a missão Blue Ghost da Firefly Aerospace iniciou sua jornada até a Lua, levando instrumentos científicos da NASA e com o objetivo de realizar o segundo pouso suave comercial na superfície do planeta.

HDR em telefones pode ser inútil

HDR em telefones pode ser inútil

Desligar o HDR do telefone resulta em resultados inconsistentes e pouco impressionantes, além de ser um recurso que muitas vezes não é importante.

Atalhos valiosos do Excel que você deve conhecer

Atalhos valiosos do Excel que você deve conhecer

Se você dominar as fórmulas, as teclas de atalho no Excel serão muito mais rápidas e convenientes. Vamos nos juntar ao WebTech360 para coletar atalhos valiosos do Excel no resumo abaixo.

Como criar um fundo transparente no Canva de graça

Como criar um fundo transparente no Canva de graça

O Canva tem uma opção para criar fundos transparentes para fotos de forma totalmente gratuita, sem precisar assinar o Pro.

Endless Nightmare 5: Curse - código mais recente e como inserir o código

Endless Nightmare 5: Curse - código mais recente e como inserir o código

O mais recente código do Endless Nightmare 5: Curse incluirá recompensas que podem ser armas, amuletos ou pontos espirituais ou muitas outras coisas no jogo para ajudar e estimular os jogadores em seu caminho de exorcismo.

Últimos códigos do Anime Squad Simulator e como inseri-los

Últimos códigos do Anime Squad Simulator e como inseri-los

O código do Anime Squad Simulator ajudará os jogadores a aumentar o tempo em x3, ganhando dinheiro durante o treinamento ou x3 pontos de experiência. Graças a isso, os jogadores terão um bom começo ao se familiarizarem com seu esquadrão de personagens no Anime Squad Simulator. Aqui estão os códigos mais recentes do Anime Squad Simulator e como inseri-los.

5 máquinas de lavar com a melhor função de secagem da atualidade

5 máquinas de lavar com a melhor função de secagem da atualidade

A estação úmida faz com que suas roupas demorem muito para secar e também fiquem com mau cheiro. Você é uma pessoa ocupada e quer economizar tempo lavando roupa. A melhor solução é comprar uma máquina de lavar com função de secar.

As 5 melhores secadoras de roupas da atualidade

As 5 melhores secadoras de roupas da atualidade

A secadora de roupas se torna uma ferramenta poderosa em dias chuvosos, ajudando a manter suas roupas perfumadas e limpas, eliminando a preocupação com o tempo úmido.

Instruções para usar o Meta AI para criar imagens e escrever e-mails profissionais

Instruções para usar o Meta AI para criar imagens e escrever e-mails profissionais

O Meta AI agora é gratuito para uso, sem a necessidade de usar truques falsos de IP adicionais como antes.

Últimos códigos Hoa e Kiem e como inseri-los

Últimos códigos Hoa e Kiem e como inseri-los

Code Hoa e Kiem dão aos jogadores algumas recompensas atraentes quando eles entram no jogo pela primeira vez. Você precisará de algum equipamento e dinheiro se for novo no jogo.