Ответ 1
Int32.TryParse(String, Int32)
- http://msdn.microsoft.com/en-us/library/f02979c7.aspx
bool result = Int32.TryParse(value, out number);
if (result)
{
Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
Как вы можете проверить, что строка конвертируемая для int?
Скажем, у нас есть такие данные, как "Дом", "50", "Собака", "45.99", я хочу знать, следует ли просто использовать строку или использовать синтаксический анализ int.
В JavaScript у нас была функция parseInt(). Если строка не может быть проанализирована, она вернет NaN.
Int32.TryParse(String, Int32)
- http://msdn.microsoft.com/en-us/library/f02979c7.aspx
bool result = Int32.TryParse(value, out number);
if (result)
{
Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
Не могли бы вы сделать немного более элегантным, запустив tryparse прямо в if?
Так же:
if (Int32.TryParse(value, out number))
Console.WriteLine("Converted '{0}' to {1}.", value, number);
Int.TryParse
нашел это в одном из результатов поиска: Как определить, является ли строка числом?
Добавление этого, потому что ответы, которые я видел раньше, не имели использования:
int n;
bool isNumeric = int.TryParse("123", out n);
здесь "123"
может быть чем-то вроде строки s = "123"
, которую OP тестирует, а значение n
будет иметь значение (123
) после вызова, если оно будет считано числовым.