Olá Pessoal,
Este aqui É MAIS UM POST (O segundo para ser mais preciso) onde falarei sobre mais uma instrução útil e prática, também muito utilizada por programadores que simplificam de forma clara comandos condicionais: O operador ternário. Esse operador é bastante utilizado em linguagens baseadas em C/C++, C#, Java, PHP e etc. Vamos conhecer:
O Operador Ternário
Para entendermos esse operador vamos imaginar a seguinte situação: Suponhamos que você esteja escrevendo uma estrutura condicional onde uma variável “x” receberá um valor de acordo com uma condição estabelecida. Vejamos essa condição expressa no bloco de comandos abaixo:
if(y > 4) x = 0; else x = 1
Pelo o que podemos ver uma instrução condicional aparente simples, mas que poderia ser simplificado usando o operador ternário. Esse operador segue a seguinte sintaxe:
<variável> = (<condição>)?<valor se verdadeiro>:<valor se falso>;
Conforme podemos ver acima, o operador ternário ocupa somente uma única linha de código. Com isso, se substituirmos a expressão condicional mostrada anteriormente pelo uso do operador ternário teremos o seguinte resultado:
x = (y>4)?0:1;
Bem mais simples não?
Vejamos abaixo algumas demonstrações do uso do operador ternário:
//Operador ternário situacao = (Media >=7)? "APROVADO": "REPROVADO"; //Equivale a: if(media > 7) situacao = "APROVADO"; else situacao = "REPROVADO";
Vejamos mais uma demonstração:
//Operador ternário bonus_salarial = (salario < 500.00)? salario * 0.3 : (salario < 800.00)? salario * 0.2: salario * 0.1; //Equivale a: if(salario < 500.00) bonus_salarial = salario * 0.3; else if(salario < 800.00) bonus_salarial = salario * 0.2; else bonus_salarial = salario * 0.1;
Quando o operador ternário NÃO PODE SER USADO?
O operador ternário é usado somente em expressões condicionais cujo objetivo e atribuir simplesmente um valor para uma variável, que será diferente em cada condição lógica, NÃO PODENDO SER UTILIZADO em outra situação mais.
Vejamos abaixo algumas condições em que o operador ternário NÃO PODE SER USADO:
//Execução de métodos (funções) sem retorno (void) if(salario < 800.00) Console.WriteLine("Você tem direito ao reajuste"); else Console.WriteLine("Você não tem direito ao reajuste")
//Execução de mais de uma instrução por condição if(conexao_banco = null) { conexao_banco = new SQLConnection(connectionString); conexao_banco.Open(); } else { Console.WriteLine("Conexão atual será encerrada"); conexao_banco.Close(); }
Bom pessoal, por hoje é só. Em breve estarei postando mais dicas de uso de instruções parecidas como essa, que aceleram muito o processo de codificação, de uma forma muito prática e simples.
Se você achou legal este POST compartilhe com seus amigos, pois dicas como essa são de grande importância.
Um forte abraço para todos