Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Операция ??

Операция ??

Еще одной особенностью типов с разрешением принимать значения null, о которой вам следует знать, является то, что с такими типами можно использовать появившуюся в C# 2005 специальную операцию, обозначаемую знаком ??. Эта операция позволяет присвоить типу значение, если его текущим значением оказывается null. Для примера предположим, что в том случае, когда значение, возвращенное методом GetIntFromDatabase(), оказывается равным null, соответствующему локальному типу int с разрешением значения null нужно присвоить числовое значение 100 (конечно, упомянутый метод всегда возвращает null, но я думаю, вы поймете идею, которую иллюстрирует данный пример).

static void Main(string[] args) {
 Console.WriteLine("***** Забавы с разрешением null *****n");
 DatabaseReader dr = new DatabaseReader();
 // Если GetIntFromDatabase() возвращает null,
 // то локальной переменной присваивается значение 100.
 int? myData = dr.GetIntFromDatabase() ?? 100;
 Console.WriteLine("Значение myData: {0}", myData);
 Console.ReadLine();
}

Исходный код. Проект NullableType размещен в подкаталоге, соответствующем главе 3.

Оглавление книги


Генерация: 0.127. Запросов К БД/Cache: 2 / 0
поделиться
Вверх Вниз