[TUTORIAL] Entenda como funciona: ENUM, SWITCH, BREAK, CASE no C#
5 participantes
Página 1 de 1
[TUTORIAL] Entenda como funciona: ENUM, SWITCH, BREAK, CASE no C#
Olá pessoal, sei que vários se perguntam como utilizar isto, e de fato, é algo que iniciantes geralmente não fazem ideia de como funciona. Então, neste tutorial vou explicar passo a passo o funcionamento de:
-ENUM
-SWITCH
-BREAK
-CASE
Existem algumas outras aplicações, para o break por exemplo, que não explicarei aqui... vou falar apenas do principal, que é mais utilizado por ai, então vamos lá.
Todos estes parâmetros que eu citei, meio que trabalham juntos, tudo dentro de um enum. Más o que é um enum??? Abaixo temos um exemplo:
O enum funcionará como uma variável, só que de multiplas escolhas. Este enum acima irá gerar uma tabela deste tipo abaixo:
Na primeira linha do script, eu declaro um enum e dou um nome a ele, que no caso é "SELEC".
Dentro do enum, são declaradas variáveis... basta colocar o nome delas e separa-las por uma vírgola. São estas variáveis que aparecerão para serem selecionadas, como opções.
Depois de fazer o enum, eu declaro uma variável do tipo "SELEC" e dou o nome que eu quiser a ela, que no caso foi "TipoDoItem". Desta forma, um enum com o nome "TipoDoItem" e com as opções declaradas no enum, foi criado.
Depois disso, vou declarar uma variável do tipo inteiro "int" que não tem relação alguma com os parâmetros que estou explicando... vou usa-la apenas para explicar o funcionamento do enum... Então, aqui está a variável:
Feito isto, vamos explicar agora o funcionamento do "SWITCH". Então, o que seria e para que serve isto???
Bom, basicamente, o switch é responsável por identificar qual opção do enum você selecionou, e ele faz isto juntamente com o case, como no exemplo abaixo:
Neste trecho de código acima, eu declaro um switch para a variável "TipoDoItem" que eu criei, então, aquele enum de 2 opções que eu havia criado, agora será analisado por este switch, para ver qual opção que eu selecionei.
Na segunda linha, já nos deparamos com o comando "case", que nada mais é do que "caso". É como se eu perguntasse, "caso opção 1, faz isso". "caso opção 2, faz aquilo"
Então nós temos o comando da opção 1
Então, caso o tipo do enum, que no caso é "SELEC" tiver a "Opção1" como selecionada, irá fazer o que você colocou dentro deste case, que por hora é nada.
Depois do comando que será colocado para acontecer, usa-se um "break" que nada mais é do que uma quebra de função.
O break funcionará como um comando para sair do switch, ou de um for, ou de um while, enfim. Se ele for encontrado, o script não irá mais ler o resto que está dentro daquele "switch", pois a opção procurada já foi encontrada; É uma maneira de otimizar o código.
Bom, feito isto, vamos utilizar aquela nossa variável do tipo inteiro que declaramos lá em cima, e faremos isto utilizando os case.
Se a opção 1 for selecionada, quero que a variável receba o valor "50". se a opção 2 for selecionada, quero que a variável receba o valor "100". Então esta parte do código ficaria assim:
E para finalizar, o código inteiro descrito neste tópico ficaria algo assim:
Então, se a opção 1 foi selecionada, a int recebe 50. Se a opção 2 foi selecionada, a int recebe 100.
No enum, você pode trabalhar com quantas opções quiser, e também quantos case quiser... então pode ser um enum com várias opções. Da para fazer muita coisa com enum, switch, etc...
Espero que tenha dado para entender :D
-ENUM
-SWITCH
-BREAK
-CASE
Existem algumas outras aplicações, para o break por exemplo, que não explicarei aqui... vou falar apenas do principal, que é mais utilizado por ai, então vamos lá.
Todos estes parâmetros que eu citei, meio que trabalham juntos, tudo dentro de um enum. Más o que é um enum??? Abaixo temos um exemplo:
- Código:
public enum SELEC{
Opção1,
Opção2
}
public SELEC TipoDoItem;
O enum funcionará como uma variável, só que de multiplas escolhas. Este enum acima irá gerar uma tabela deste tipo abaixo:
Na primeira linha do script, eu declaro um enum e dou um nome a ele, que no caso é "SELEC".
Dentro do enum, são declaradas variáveis... basta colocar o nome delas e separa-las por uma vírgola. São estas variáveis que aparecerão para serem selecionadas, como opções.
Depois de fazer o enum, eu declaro uma variável do tipo "SELEC" e dou o nome que eu quiser a ela, que no caso foi "TipoDoItem". Desta forma, um enum com o nome "TipoDoItem" e com as opções declaradas no enum, foi criado.
Depois disso, vou declarar uma variável do tipo inteiro "int" que não tem relação alguma com os parâmetros que estou explicando... vou usa-la apenas para explicar o funcionamento do enum... Então, aqui está a variável:
- Código:
public int numeroInteiro;
Feito isto, vamos explicar agora o funcionamento do "SWITCH". Então, o que seria e para que serve isto???
Bom, basicamente, o switch é responsável por identificar qual opção do enum você selecionou, e ele faz isto juntamente com o case, como no exemplo abaixo:
- Código:
switch (TipoDoItem) {
case SELEC.Opção1:
//FAZ ACONTECER ALGO
break;
case SELEC.Opção2:
//FAZ ACONTECER ALGO
break;
}
Neste trecho de código acima, eu declaro um switch para a variável "TipoDoItem" que eu criei, então, aquele enum de 2 opções que eu havia criado, agora será analisado por este switch, para ver qual opção que eu selecionei.
Na segunda linha, já nos deparamos com o comando "case", que nada mais é do que "caso". É como se eu perguntasse, "caso opção 1, faz isso". "caso opção 2, faz aquilo"
Então nós temos o comando da opção 1
- Código:
case SELEC.Opção1:
//FAZ ACONTECER ALGO
break;
Então, caso o tipo do enum, que no caso é "SELEC" tiver a "Opção1" como selecionada, irá fazer o que você colocou dentro deste case, que por hora é nada.
Depois do comando que será colocado para acontecer, usa-se um "break" que nada mais é do que uma quebra de função.
O break funcionará como um comando para sair do switch, ou de um for, ou de um while, enfim. Se ele for encontrado, o script não irá mais ler o resto que está dentro daquele "switch", pois a opção procurada já foi encontrada; É uma maneira de otimizar o código.
Bom, feito isto, vamos utilizar aquela nossa variável do tipo inteiro que declaramos lá em cima, e faremos isto utilizando os case.
Se a opção 1 for selecionada, quero que a variável receba o valor "50". se a opção 2 for selecionada, quero que a variável receba o valor "100". Então esta parte do código ficaria assim:
- Código:
switch (TipoDoItem) {
case SELEC.Opção1:
numeroInteiro = 50;
break;
case SELEC.Opção2:
numeroInteiro = 100;
break;
}
E para finalizar, o código inteiro descrito neste tópico ficaria algo assim:
- Código:
using UnityEngine;
using System.Collections;
public class Coletaveis : MonoBehaviour{
public enum SELEC{
Opção1,
Opção2
}
public SELEC TipoDoItem;
public int numeroInteiro;
void Start(){
switch (TipoDoItem) {
case SELEC.Opção1:
numeroInteiro = 50;
break;
case SELEC.Opção2:
numeroInteiro = 100;
break;
}
}
}
Então, se a opção 1 foi selecionada, a int recebe 50. Se a opção 2 foi selecionada, a int recebe 100.
No enum, você pode trabalhar com quantas opções quiser, e também quantos case quiser... então pode ser um enum com várias opções. Da para fazer muita coisa com enum, switch, etc...
Espero que tenha dado para entender :D
Última edição por MarcosSchultz em Ter Jun 07, 2016 9:16 pm, editado 1 vez(es)
Re: [TUTORIAL] Entenda como funciona: ENUM, SWITCH, BREAK, CASE no C#
Ótima explicação ! :D
GustavoMaster- Avançado
- PONTOS : 3771
REPUTAÇÃO : 14
Idade : 21
Respeito as regras :
Re: [TUTORIAL] Entenda como funciona: ENUM, SWITCH, BREAK, CASE no C#
O break e o continue sao comandos muito uteis. Pra quem nao sabe assim como o break termina o loop atual e pula para o codigo logo abaixo o continue vai voltar ele do começo. Assim podemos criar condições bem legais. Ex:
- Código:
for(i=0,m=0;i<50;i++,m+=5) {
if (i != m){
continue; // sempre que I for diferente de M o codigo volta pro começo. Exemplo meio inutil mas deu pra entender kk
}
}
RenanMSV- Instrutor
- PONTOS : 4483
REPUTAÇÃO : 356
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :
Re: [TUTORIAL] Entenda como funciona: ENUM, SWITCH, BREAK, CASE no C#
Por acaso tem como utilizar inputs e variáveis no switch case?
Neliosk- Iniciante
- PONTOS : 1264
REPUTAÇÃO : 0
Respeito as regras :
Tópicos semelhantes
» [TUTORIAL] Unity 5 - Como utilizar o Enum (switch, case)
» Erro com switch case (C#)
» Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.
» [TUTORIAL] Entenda o Sistema De multiplayer local ! BASICO (Video Aula) pt/br
» [RESOLVIDO] enum Mostrar Opções no Inspector só se o Enum estiver Selecionado?
» Erro com switch case (C#)
» Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.
» [TUTORIAL] Entenda o Sistema De multiplayer local ! BASICO (Video Aula) pt/br
» [RESOLVIDO] enum Mostrar Opções no Inspector só se o Enum estiver Selecionado?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos