Sintaxe: variável ?? valor padrão
O operador ?? retorna o operando à esquerda da expressão se o valor não for nulo; se o valor for nulo ele retorna o operando à direita da expressão.
object a = null; object d = new object(); object e;if (a != null) e = a; else e = d; |
object a = null; object d = new object(); object e;object e = c ?? d; |
Abaixo temos um exemplo mais prático:
string mensagem = null; Console.WriteLine(mensagem ?? “Seu Texto”); |
Como mensagem possui um valor null será exibida a mensagem “Seu Texto” definida após o operador ??.
Vamos agora combinar a utilização dos dois operadores:
string conceito = null ; int nota = 5; string resultado = “”;resultado = nota >= 5 ? conceito ?? ” Aprovado ” : ” Reprovado “; Console.WriteLine(resultado); |
O que será exibido ???
O operador ? irá verificar se a expressão nota >= 5 é verdadeira, neste caso, a primeira expressão será avaliada:
conceito ?? ” Reprovado “
Nesta expressão temos o operador ?? e como o valor da variável conceito é null então será exibida a string ” Aprovado “;