C# 中的字元到整數轉換
在 C# 中,char 是一個 Unicode 字符,表示單個字母、數字或其他符號。將 char 轉換為整數看似很簡單,但某些細微之處可能會使流程變得複雜。
正如提問者所發現的那樣,Convert.ToInt32() 將 char 解釋為其十進位值,傳回的結果與預期的數字不符。 int.Parse() 也只接受字串,進一步增加了問題的複雜度。
原生轉換法
令人驚訝的是,C# 中有一種簡單的原生方法可以將 char 轉換為 int,無需進行字串操作。此方法包括從 char 減去 '0' 的字元值:
<code class="language-csharp">char foo = '2'; int bar = foo - '0';</code>
這種方法之所以有效,是因為每個字元在內部都由一個數字表示。字元 '0' 到 '9' 被賦予連續的數字,因此 '0' 和 '2' 之間的差是 2,從而得到所需的整數。
此方法高效且是 C# 的原生方法,使其成為將 char 轉換為 int 的簡單直接的方法。
以上是如何有效地將角色轉換為C#中的整數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!