# C# ?? "null coalescing operator"


The null-coalescing operator `??` returns the value of its left-hand operand if it isn't null; otherwise, it evaluates the right-hand operand and returns its result. The `??` operator doesn't evaluate its right-hand operand if the left-hand operand evaluates to non-null.

```csharp
string message = "hello world";
string result = message ?? "It was null";
//result == "hello world";

string message = null;
string result = message ?? "It was null";
//result == "It was null";
```

Thanks to [Scott Guthrie](https://weblogs.asp.net/scottgu/the-new-c-null-coalescing-operator-and-using-it-with-linq)

