O operador condicional (:?) avalia uma expressão booleana e retorna um dentre dois valores.
O formato do operador (:?) é o seguinte:
condição ? primeira_expressão : segunda_expressão
|
Se a condição for verdadeira, a primeira expressão é avaliada e se torna o resultado, se falsa, a segunda expressão é avaliada e se torna o resultado. Apenas uma das duas expressões é sempre avaliada.
Abaixo temos um exemplo mostra como podemos usar o operador para reduzir a quantidade de código escrita:
static void Main(string[] args) { int x = 10; int y = 20; int maximo; if (x > y) maximo = x; else maximo = y;Console.WriteLine(” Máximo = ” + maximo); Console.ReadKey(); } |
static void Main(string[] args) { int x = 10; int y = 20; int maximo; maximo = (x > y) ? x : y;Console.WriteLine(” Máximo = ” + maximo); Console.ReadKey(); } |
A seguir um exemplo que verifica se uma variável é null : Ex:
Valor == null ? ValorSeForNull : ValorSeNaoForNulll;