C# ternário (? :) Operador
C# ternário (? :) Operador
Neste artigo, aprenderemos sobre o operador ternário do C# e como usá-lo para controlar o fluxo do programa.
O operador ternário é um substituto para a instrução if...else. Portanto, antes de prosseguir neste tutorial, passe pela instrução if...else do C# (se ainda não o fez).
A sintaxe do operador ternário é:
Condition ? Expression1 : Expression2;
O operador ternário funciona da seguinte forma:
- Se a expressão indicada por
Condition
étrue
, o resultado deExpression1
é retornado pelo operador ternário. - Se for
false
, o resultado deExpression2
é retornado.
Por exemplo, podemos substituir o seguinte código
if (number % 2 == 0) { isEven = true; } else { isEven = false; }
com
isEven = (number % 2 == 0) ? true : false ;
Por que é chamado de operador ternário?
Este operador usa 3 operando , daí o nome de operador ternário.
Exemplo 1:Operador Ternário C#
using System;
namespace Conditional
{
class Ternary
{
public static void Main(string[] args)
{
int number = 2;
bool isEven;
isEven = (number % 2 == 0) ? true : false ;
Console.WriteLine(isEven);
}
}
}
Ao executarmos o programa, a saída será:
True
No programa acima,
2
é atribuído a uma variável número . Então, o operador ternário é usado para verificar se number é par ou não. Como 2 é par, a expressão (
number % 2 == 0
) retorna true
. Também podemos usar o operador ternário para retornar números, strings e caracteres. Em vez de armazenar o valor de retorno na variável isEven , podemos imprimir diretamente o valor retornado pelo operador ternário como,
Console.WriteLine((number % 2 == 0) ? true : false);
Quando usar o operador ternário?
O operador ternário pode ser usado para substituir várias linhas de código por uma única linha. No entanto, não devemos abusar dele.
Por exemplo, podemos substituir o seguinte if..else if code
if (a > b) { result = "a is greater than b"; } else if (a < b) { result = "b is greater than a"; } else { result = "a is equal to b"; }
com uma única linha de código
result = a > b ? "a is greater than b" : a < b ? "b is greater than a" : "a is equal to b";
Como podemos ver, o uso do operador ternário pode diminuir o comprimento do código, mas dificulta o entendimento da lógica do código.
Portanto, é melhor usar apenas o operador ternário para substituir instruções if else simples.
Linguagem C
- Sobrecarga do Operador Python
- Java instanceof Operator
- Manutenção envolvida do operador - funciona?
- Operadores em C++ com Exemplo:O que é, Tipos e Programas
- Sobrecarga do operador C++ com exemplos
- Reparos para o teclado do operador Charmilles
- Sobrecarga de C++ (operador e função)
- Java 9 - Operador Diamante de Classe Interna
- MATLAB - Sintaxe Básica
- C# - Sobrecarga do Operador