marți, octombrie 30, 2007

Operatorul '??'

De câte ori ați scris codul în modul următor?

string sir;
...
if (sir == null)
return string.Empty;
else
return sir;


sau

int? age;
...
if (age.HasValue)
return age;
else
return -1;


Da, am scris, și?
Păi, există un operator '??' care returnează operandul din stânga dacă valoarea este diferită de null și din dreapta în caz contrar.

Astfel, exemplele de mai sus le putem rescrie în:

string sir;
...
return sir ?? string.Empty;

sau

int? age;
...
return age ?? -1;


Simplu, nu?

Niciun comentariu: