Как проверить, является ли строка числом в C#
Шаги для проверки того, является ли строка числом в C#
- Объявите целочисленную переменную.
- Передайте строку методам
int.TryParse()
илиdouble.TryParse()
с помощью переменнойout
. - Если строка является числом, метод
TryParse
вернет true. И присвоит объявленной целочисленнойout
значение.
On this page
Проверка, является ли строка числом или нет в C#
Например, у нас есть строковая переменная “123”, и если вы хотите проверить, является ли она числовой, используйте приведенный ниже код на C#.
var stringNumber = "123";
int numericValue;
bool isNumber = int.TryParse(stringNumber, out numericValue);
//isNumber is true and numericValue=123
var stringNumber = "123P";
int numericValue;
bool isNumber = int.TryParse(stringNumber, out numericValue);
//isNumber is false and numericValue=0 default value
Начиная с C# 7 мы можем объявить переменную out в самом методе TryParse.
bool isNumber = int.TryParse(stringNumber, out int numericValue);
Проблема с приведенным выше методом int.TryParse
заключается в том, что он не может проверить отрицательные значения строковых чисел.
Проверка отрицательного числа строк в C#
Для проверки отрицательных значений числа строк мы можем использовать метод C# double.TryParse()
.
var negativeString = "-123";
double number;
if(double.TryParse(negativeString,out number)){
if (number > 0){
}else{
//negative number
}
}
Лучший способ проверить, является ли строка числом в C#
Для проверки того, является ли строка числом, всегда используйте метод double.TryParse()
, поскольку он может проверять как положительные, так и отрицательные числа.