Nullable - типы и ввод через user-а - C#
Формулировка задачи:
Доброго здоровья вам. Такой вопрос, есть код. В мейне если параметр Quantity сделать null то в функции Human пройдет проверка что параметр именно null и затем выдаст про "неизвестное количество детей". Вотс...А вот как сделать что бы null передавался в случае не когда программист задает параметры, а именно пользователь пишет их в консоле (закомментированный участочек кода)? Просто если в консоли ничего не писать выдаст исключение, если написать null то опять же, выдаст исключение.
class Program
{
public static void Human(string name, int? quantity)
{
string children = Convert.ToString(quantity);
Console.WriteLine("Name: " + name);
if (quantity == null)
children = null;
switch (quantity)
{
case null: Console.WriteLine(children ?? "Quantity unknown!");
break;
case 0: Console.WriteLine("zero Children");
break;
default: Console.WriteLine("Children quantity: " + quantity);
break;
}
}
static void Main(string[] args)
{
/*
string Name;
int? Quantity;
Console.Write("Name: ");
Name = Console.ReadLine();
Console.Write("Quantity children: ");
Quantity = Convert.ToInt32(Console.ReadLine());
Program.Human(Name, Quantity);
*/
Program.Human("Alex", null);
Program.Human("Brian", 0);
Program.Human("Alisha", 3);
Console.ReadLine();
}
}Решение задачи: «Nullable - типы и ввод через user-а»
textual
Листинг программы
string str = Console.ReadLine(); if (!String.IsNullOrEmpty(str)) Quantity = Convert.ToInt32(Console.ReadLine());