Wie prüft man, ob eine Zeichenkette eine Zahl in C# ist
Schritte, um zu prüfen, ob eine Zeichenfolge eine Zahl in C# ist
- Deklarieren Sie eine Integer-Variable.
- Übergeben Sie eine Zeichenkette an die Methoden
int.TryParse()
oderdouble.TryParse()
mit der Variablenout
. - Wenn der String eine Zahl ist, gibt die Methode
TryParse
true zurück. Und weist dem deklarierten Integer-Wertout
einen Wert zu.
Auf dieser Seite
Prüfen, ob eine Zeichenkette eine Zahl ist oder nicht in C#
Zum Beispiel haben wir eine String-Variable “123”, und wenn Sie überprüfen möchten, ob es numerisch ist, verwenden Sie den folgenden C#-Code.
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
Ab C# 7 können wir out Variable in TryParse Methode selbst deklarieren.
bool isNumber = int.TryParse(stringNumber, out int numericValue);
Das Problem mit der obigen int.TryParse
Methode ist, dass sie nicht auf negative String-Zahlenwerte prüfen kann.
Überprüfung auf negative String-Zahlen in C#
Um nach negativen Zahlenwerten zu suchen, können wir die C#-Methode double.TryParse()
verwenden.
var negativeString = "-123";
double number;
if(double.TryParse(negativeString,out number)){
if (number > 0){
}else{
//negative number
}
}
Bester Weg zu prüfen, ob String eine Zahl in C# ist
Verwenden Sie immer die Methode double.TryParse()
, um zu prüfen, ob eine Zeichenkette eine Zahl ist, da sie sowohl positive als auch negative Zahlen überprüfen kann.