Heim >Backend-Entwicklung >C++ >Wie konvertiert man ein Zeichen effizient in sein Ganzzahläquivalent in C#?
Konvertierung von Zeichen in Ganzzahlen in C#
Beim Umgang mit Zeichen in C# müssen Sie Zeichen häufig in Ganzzahlen umwandeln. Wenn Sie jedoch Convert.ToInt32
direkt verwenden, wird der Dezimalwert des Zeichens zurückgegeben, nicht der numerische Wert.
Alternative Konvertierungsmethode:
Während Convert.ToInt32
normalerweise für die Konvertierung von Zeichenfolgen in Ganzzahlen verwendet wird, ist es nicht für die Konvertierung von Zeichen geeignet. Bitte berücksichtigen Sie die folgenden Alternativen:
Convert.ToInt32(new string(foo, 1))
: Diese Methode erstellt eine neue Zeichenfolge aus Zeichen und wandelt diese dann mit Convert.ToInt32
in eine Ganzzahl um. int.Parse
: Diese Methode funktioniert nur mit Zeichenfolgen, sodass Sie die Zeichen zuerst in eine Zeichenfolge konvertieren und diese dann in eine Ganzzahl analysieren können. Konvertierung nativer Zeichen in Ganzzahlen:
C# bietet auch eine native Methode zum Konvertieren von Zeichen in Ganzzahlen:
<code class="language-csharp">char foo = '2'; int bar = foo - '0';</code>
Erklärung:
Diese Methode basiert auf Zeichen als interne Darstellung von Zahlen. Die Zeichen „0“ bis „9“ belegen aufeinanderfolgende Positionen in der Zahlenfolge. Durch Subtrahieren von „0“ vom Zeichenwert erhalten Sie den tatsächlichen numerischen Wert.
Im obigen Beispiel stellt foo
das Zeichen „2“ dar, das einen internen Wert von 50 hat. Subtrahieren Sie 48 (den ASCII-Wert „0“), um die Ganzzahl 2 zu erhalten.
Dieser unkomplizierte Ansatz macht Zwischenkonvertierungen von Zeichenfolgen überflüssig und bietet eine direkte und effiziente Möglichkeit, C#-Zeichen in Ganzzahlen umzuwandeln.
Das obige ist der detaillierte Inhalt vonWie konvertiert man ein Zeichen effizient in sein Ganzzahläquivalent in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!