C#中字元到整數的轉換
在C#中處理字元時,經常需要將字元轉換為整數。但是,直接使用Convert.ToInt32
將傳回字元的十進位值,而不是數值。
替代轉換方法:
雖然Convert.ToInt32
通常用於字串到整數的轉換,但它不適用於轉換字元。請考慮以下替代方法:
Convert.ToInt32(new string(foo, 1))
:此方法從字元建立一個新字串,然後使用Convert.ToInt32
將其轉換為整數。 int.Parse
:此方法僅適用於字串,因此您可以先將字元轉換為字串,然後將其解析為整數。 原生字元到整數轉換:
C#也提供了一種將字元轉換為整數的原生方法:
<code class="language-csharp">char foo = '2'; int bar = foo - '0';</code>
解釋:
此方法依賴字元作為數字的內部表示。字元'0'到'9'在數字序列中佔據連續的位置。透過從字元值中減去'0',您可以獲得實際的數值。
在上面的範例中,foo
表示字元'2',其內部值為50。減去48('0'的ASCII值)得到整數2。
這種直接的方法無需中間字串轉換,從而提供了一種直接且高效的C#字元到整數轉換方法。
以上是如何有效地將字符轉換為C#中的整數等效物?的詳細內容。更多資訊請關注PHP中文網其他相關文章!