Получение значения nullable-типа в C#
У int? есть свойство HasValue: оно показывает, лежит ли число в переменной. Само число достают через Value, но только когда значение есть:
int? amount = 12;
if (amount.HasValue) {
Console.WriteLine(amount.Value);
}
Тот же смысл у проверки != null. После нее можно читать Value:
int? amount = 12;
if (amount != null) {
Console.WriteLine(amount.Value);
}
Если вызвать Value у пустой переменной, программа остановится с ошибкой. Поэтому сначала проверяют HasValue или != null:
int? amount = null;
if (amount != null) {
Console.WriteLine(amount.Value);
} else {
Console.WriteLine(0);
}
Дан код:
int? points = 4;
Если в points есть число, выведите его через Value. Иначе выведите -1.