Вообщем, оператор очень полезный и иногда позволяет существенно сократить размеры кода за счет замены конструкций проверки значения на null.
Обычно такая проверка осуществляется следующими способами (в зависимости от контекста):
#1
if(value1 != null)
{
... //работаем с value1
}
#2
if(value1 == null) return;
#3
value3 = value1 != null ? value1 : value2;
... // работаем с value3
Лично я предпочитаю использовать вариант №2 там где это возможно. Это позволяет уменьшить уровень вложенности внутри функции. А это, в свою очередь, упрощает ее чтение.
Использование же оператора ?? позволяет упростить запись #3:
#3.1
value3 = value1 ?? value2;
... // работаем с value3
Удобно!
Комментариев нет:
Отправить комментарий