Caso de interruptor de Golang

Caso de interruptor de Golang
Um caso de mudança na programação refere -se a um mecanismo de controle de seleção que permite executar instruções específicas com base nas diferentes ações. Simplificando, é uma maneira mais fácil e eficiente de escrever várias declarações if-else.

Este guia analisará como podemos usar as instruções de switch usando a linguagem de programação Go.

Declaração de interrupção

Uma instrução Switch permite que o programa decida a ação a tomar com base nas opções seletivamente.

Antes de aplicar as declarações de switch no Go, vejamos um exemplo de como realizar uma tarefa semelhante usando uma instrução IF ... else.

Considere o programa de exemplo abaixo:

Pacote principal
importar "fmt"
func main ()
db: = "mysql"
ifdb == "sqlite"
fmt.Println ("porta: nenhum")
elseifdb == "SQL Server"
fmt.Println ("Port: 1433")
elseifdb == "mongodb"
fmt.Println ("Port: 27017")
elseifdb == "mysql"
fmt.Println ("porta: 3306")
outro
fmt.Println ("banco de dados não suportado!")

No exemplo acima, criamos uma variável chamada db para armazenar uma string que contém o banco de dados. Em seguida, usamos uma instrução IF para verificar se o valor da variável db é igual a "sqlite" se true, imprima a porta em execução para o servidor de banco de dados.

Observe que implementamos muitas outras declarações se verificar cada resultado potencial.

Embora o código acima funcione, ele não é muito legível e contém linhas quase duplicadas.

Para limpar e organizar o código acima, podemos usar uma instrução Switch.

No GO, criamos uma instrução Switch usando a palavra -chave Switch, seguida pela variável que compara vários resultados.

Em seguida, criamos um bloco de caixa que define a ação com base no resultado.

Por exemplo:

PackageMain
importar "fmt"
funcmain ()
db: = "mysql"
Switch DB
caso "sqlite":
fmt.Println ("porta: nenhum")
Case "SQL Server":
fmt.Println ("Port: 1433")
caso "MongoDB":
fmt.Println ("Port: 27017")
caso "mysql":
fmt.Println ("porta: 3306")
padrão:
fmt.Println ("banco de dados não suportado!")

Começamos chamando a palavra -chave Switch, seguida pela variável, para comparar.

Em seguida, implementamos declarações de switch para verificar casos correspondentes. Se um caso avaliar como verdadeiro, executamos esse bloco.

Também adicionamos um caso padrão que é usado como uma declaração else. Isso é executado se nenhum dos casos definidos avaliar para verdadeiro.

Verifique o caso múltiplo

Você pode ter uma declaração de caso verificando mais de um valor. Por exemplo, considere o código de exemplo abaixo

caso "mysql", "apache":
fmt.Println ("porta: 3306")
fmt.Println ("Port: 80")

Verificamos se o caso é "mysql" ou "apache" no exemplo acima. Se verdadeiro, executamos o bloco de código dentro da instrução CASE.

Cair em

Podemos usar a palavra -chave Fallthrough para transferir o controle para o próximo caso. Se o compilador encontrar a palavra -chave Fallthrough, ele se afasta da instrução SWITCH atual e vai para o próximo. Por exemplo:

switchdb
caso "sqlite":
fmt.Println ("porta: nenhum")
Cair em

Aqui, o compilador sairá do primeiro caso quando encontrar a palavra -chave Fallthrough.

Nota: Todo o código que vem após a palavra -chave FallThrough (dentro do bloco de caixa) não será executado. Portanto, verifique se a instrução Switch é a última parte do bloco de caso.

Mudar com operadores condicionais

Podemos usar uma declaração de comutador com operadores condicionais. Considere o exemplo abaixo:

idade: = 22
trocar
idade do caso <= 18&& age = 25&& age <= 35:
fmt.Println ("Preço: $ 15")
Idade do caso = 45:
fmt.Println ("Preço: $ 20")
padrão:
fmt.Println ("Limite de fora da idade")

Observe que não incluímos a variável após a palavra -chave Switch. Criamos comparações lógicas para cada bloco de caso e executamos as condições específicas se verdadeiras.

Fechamento

Este guia cobriu o básico de trabalhar com declarações de interruptor em Go. Usando um switch, você pode criar comparações para casos específicos e agir se uma ação for verdadeira.