Является ли строка числом в вводе в C#

Мне нужно написать проверку на C#. Проверка заключается в следующем, как проверить ввод пользователя и понять это строка является числом или строкой. Например мне надо, чтобы пользователь заполнил массив и если он вводит не целое число, то программа будет выдавать "Введите число". Есть идеи, как это можно реализовать?


Ответы (2 шт):

Автор решения: aepot

Просто дополню комментарии примером

while (true)
{
    Console.Write("Введите число: ");
    string text = Console.ReadLine();
    if (int.TryParse(text, out int number))
    {
        Console.WriteLine("Вы ввели число {0}", number);
        break;
    }
    Console.WriteLine("Не удалось распознать число, попробуйте еще раз.");
}
→ Ссылка
Автор решения: Johannes Krauser III

Есть метод для char - IsDigit

bool StringIsDigits(string s)
{
   foreach(var item in s)
   {
      if(!char.IsDigit(item))
         return false; //если хоть один символ не число, то выкидываешь "ложь"
   }
   return true; //если ни разу не выбило в цикле, значит, все символы - это цифры
}
→ Ссылка