Um momento
Aula 23
Cursos / Aprenda Go / Golang (Curso de Programação)
Switch na Linguagem Go (Seleção de Múltipla Escolha) - Aula de Golang

Summary

Resumo da Aula sobre SWIT em Go

Nesta aula, aprendemos sobre a estrutura de seleção múltipla chamada SWIT na linguagem de programação Go. A seguir, estão os pontos principais abordados:

Introdução ao SWIT

  • O SWIT em Go permite selecionar entre várias opções com base no valor de uma variável.
  • É similar à estrutura switch em outras linguagens de programação, mas não requer a palavra-chave break para evitar a queda em outros casos.

Estrutura do SWIT

  • O SWIT começa com a palavra-chave SWIT, seguida pela variável a ser avaliada.
  • Cada cenário é definido com case, e ainda há um caso padrão default para cobrir situações que não correspondem a nenhum dos casos.

Exemplo Prático

  1. Definição de Variável:
    • Usamos uma variável nome do tipo string, que pode ser inicializada com valores como "João" ou "Ana".
  2. Casos:
    • Se nome for "Ana", o programa imprime uma mensagem específica.
    • Se for "João", outra mensagem é impressa.
    • Se não corresponder a nenhum nome, imprime "não conheço".

Funcionamento do SWIT

  • O programa avalia a variável na condição do SWIT e compara a cada case.
  • Uma vez que um caso é verdade, o bloco é executado e os outros casos são ignorados, incluindo o default se presente.
  • Exemplo de execução no terminal utilizando go run SWIT.go.

Observações Adicionais

  • O case não precisa ser uma constante; pode ser uma expressão.
  • A variável pode ser inicializada dentro do SWIT, mas se feita, terá escopo limitado ao bloco do SWIT.

Conclusão

Esta aula ofereceu uma introdução prática ao uso do SWIT em Go. Para estudos futuros, recomenda-se explorar outros aspectos e casos de uso mais complexos.

Até a próxima aula!

Video Transcript

Olá a todos! Nesta aula nós vamos aprender SWIT na linguagem GO, a seleção de múltipla escolha. Então vamos começar a falar de SWIT. Então vamos aqui escrever o SWIT, aí depois a gente explica. Então eu tenho aqui o arquivo SWIT.go já, já criei este arquivo, dentro do pacote main, e eu importei FMMT para poder sempre em mim, mensagens ao console. Então vamos falar aqui, vamos escrever essa seleção de múltipla escolha. Então a gente começa com a palavra-chave que é SWIT. Vamos supor assim que você tem o nome de uma pessoa, aí você quer identificar a pessoa dependendo do nome. Então vamos criar a variável com var, variável não tem nome, nome, tipo string, eu vou dar um nome aqui entre aspas, né? De uma pessoa, vamos começar aqui com João, tá? Aí eu vou dar o SWIT no nome e vou ver o case, cada caso. Caso, se o nome fosse Ana, eu vou dizer com esse, eu sei, a Ana então vou dizer que é a Ana, tá? Só essa mensagemzinha. Aí se não for a Ana, pode ser que seja o João. E nesse caso aqui, nesse case, eu vou dizer que é o João. É o João. Tá? E se não for nenhum desse cara, então eu não conheço a pessoa, vamos dizer assim, o default que é caso contrário, padrão, tá? Se passou por todos os casos, mas não, identificou ninguém. Eu vou falar FMT, ponto print, é LN. Vou mandar a mensagem dizer que não conheço. Não conheço. Então vamos falar do SWIT. Então SWIT leva a condição aqui, nesse caso eu vou dizer que é o nome da variável. Então esse valor aqui, ele vai em cada caso e comparar esse valor aqui do caso com essa condição, o valor da condição aqui. Então se ele for o mesmo valor, né? Se esse cara, Ana, por exemplo, for igual ao nome, vai executar o corpo desse caso que tá aqui depois de dois pontos, tá? Que eu usei a inventação também só para o estilo. Então vai executar esse bloco até achar o antes, antes da, o outro case, tá? Mas note que ele, quando você pega um case, ele só executa esse case e todos os outros são ignorados. Note que se você vende a linguagem de programação, normalmente a gente tinha aquele negócio total do break, né? Para poder quebrar e terminar esse SWIT em vez de ficar continuando e olhando nos outros casos. No caso do gol, você não precisa adicionar a palavra break, porque o gol já faz isso automaticamente, tá? O break já é fornecido pelo gol, então você não precisa adicionar. Então com isso, ele vai ver se o caso, a condição não foi igual àquela, ele vai continuar o próximo caso, checa esse cara aqui e vai comparar com o nome, se for igual, vai executar, se não for, vai continuar em todos os casos, tá? No caso default, é o que acontece quando ele passa por todos os casos, mas em nenhum dos casos ele dá verdadeiro, então ele vai terminar no default, que é o que você vai fazer caso contrário, se nenhum dos outros casos forem verdadeiros, né? Então ele vai mostrar um mensagem não conheço. Agora nesse exemplo aqui, nós temos o variável nome que tem o Valor João. Então o que vai acontecer? Ele vai dar o SWIT, vai checar o caso da Ana. Ana é igual obviamente que não, porque você pode imaginar que o nome que tá assim, então você compara Ana, que o João não é a mesma, mesmo valor, então ele vai ignorar esse corpo e vai pro próximo caso. Caso João, igual a João aqui, verdadeiro, então ele executa tudo que tá dentro do caso do João. Nesse caso vai falar é o João, vai ser imprimido ao console, porque esse caso foi executado, ele vai ignorar todos os outros, incluindo esse default e vai continuar a execução do programa depois do SWIT, tá? Então vamos dar um olhado aqui, se realmente vai acontecer isso. Vamos aqui no terminal e eu vou aqui dizer GO RUN SWIT.GO, então falou que é o João, mesmo. Tá? Agora se tivesse Ana aqui que eu queria acontecer, iria bater no caso da Ana e dizer que é, no lado do RUN, é a Ana. Agora se não fosse a Ana, nem a Ana, nem o João, se fosse alguém outro alguém, né? Outro pessoa, então ia dar não com isso, tá? Porque bateu no caso da Ana, bateu no caso do João, nenhum das condições foram iguais, né? A nome, aí vai pro default. É importante notar, detalhar que o caso que não precisa ser constante pode ser uma expressão, tá? Se você vê em linguagem C, por exemplo, só pode ter, por exemplo, inteiros ou constantes, não precisa disso, pode ser qualquer expressão aqui, tá? Agora vamos ver o negócio aqui, só curiosidade, você também pode definir nome aqui logo aqui no começo do SWIT com a inicialização, se lembra do 2.0 sinal de igual, a gente já fez isso com a declaração F, a declaração F, C, né? Já tem isso, então o cenote que a gente declara varável nome aqui fora, pode também declarar aqui dentro antes de checar o valor, por exemplo, SWIT nome, dois pontos igual, vamos falar aqui João, tá? E você põe o ponto em vírgula, tá bom? Essa é a sua maneira aqui. Aí você pode remover esse cara daqui. Vamos ver no que dá. Então falou que é o João, então dá na mesma. É certo que vamos ver se você iniciar o sinal desse cara dentro do condição do SWIT? O que acontece se eu tentar dar o println da variável nome fora do SWIT? Vamos fazer esse experimento. Agora falou que o nome está ainda definido fora do corpo do SWIT, então se você fizer dessa maneira, note que o variável só vai estar disponível aqui dentro, olha aqui, se eu dar o println nome aqui dentro do caso do João, tá, eu esqueci de tirar isso daqui, deixa eu comentar aquele outro, linha 18. Tá, então João é o João, então a variável nome está definida somente no bloco do SWIT, então tem escopo somente nesse bloco aqui, mas dá um fora, mas se você estivesse definindo quando a gente tinha feito antes, né, com a nome string igual a João, opa, e não tivesse essa inicialização e desce o println aqui na linha 20, fora do SWIT, dessa maneira ele iria funcionar porque, ah deixa eu tirar esse println, porque o escopo da variável é do bloco da função main agora, né, então o nome vai ser acessível fora do SWIT também, que está acessível no todo bloco do main, então tem esse detalhe quando você usar inicialização aqui no próprio condição do SWIT, tá, então pessoal, por essa aula é só e até a próxima.
Nenhum comentário ainda (loading...)
Nenhum comentário ainda (loading...)
Gostou da aula? 😆👍
Apoie nosso trabalho com uma doação: