freeCodeCamp/guide/portuguese/csharp/null-coalescing-operator/index.md

76 lines
1.7 KiB
Markdown

---
title: Null-coalescing Operator
localeTitle: Operador de coalescência nula
---
# Operador de coalescência nula
O operador de coalescência nula em C # é usado para ajudar a designar uma variável para outra e especificar um valor alternativo se o valor da origem for `null` . O operador de coalescência de nulo em C # é `??` .
## Exemplo 1
Como `name` é `null` , o `clientName` receberá o valor "John Doe".
```cs
string name = null;
string clientName = name ?? "John Doe";
Console.WriteLine(clientName);
```
```cs
> John Doe
```
## Exemplo 2
Como o `name` não é `null` , o `clientName` receberá o valor do `name` , que é "Jane Smith".
```cs
string name = "Jane Smith";
string clientName = name ?? "John Doe";
Console.WriteLine(clientName);
```
```cs
> Jane Smith
```
## Alternativa para if… else Statement
Você poderia usar uma instrução `if...else` para testar a presença de `null` e atribuir um valor diferente.
```cs
string clientName;
if (name != null)
clientName = name;
else
clientName = "John Doe";
```
No entanto, isso pode ser muito simplificado usando o operador de coalescência nula.
```cs
string clientName = name ?? "John Doe";
```
## Alternativa para operador condicional (ternário)
Também é possível usar o operador condicional para testar a presença de `null` e atribuir um valor diferente.
```cs
string clientName = name != null ? name : "John Doe";
```
Novamente, isso pode ser simplificado usando o operador de coalescência nula.
```cs
string clientName = name ?? "John Doe";
```
## Referências
* [?? Operador (referência C #)](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/null-conditional-operator)