3 回答

TA貢獻1854條經(jīng)驗 獲得超8個贊
我很驚訝沒有人提到內(nèi)置于System.Char... 的靜態(tài)方法
int val = (int)Char.GetNumericValue('8');
// val == 8

TA貢獻1786條經(jīng)驗 獲得超11個贊
怎么樣(對char c)
int i = (int)(c - '0');
減去char值是什么?
是API問題(評論),還是擴展方法?
public static class CharExtensions {
public static int ParseInt32(this char value) {
int i = (int)(value - '0');
if (i < 0 || i > 9) throw new ArgumentOutOfRangeException("value");
return i;
}
}
然后使用 int x = c.ParseInt32();

TA貢獻1811條經(jīng)驗 獲得超4個贊
每個人都忘記的是解釋為什么會這樣。
一個Char,基本上是一個整數(shù),但是在ASCII表中有一個指針。所有字符都有一個對應(yīng)的整數(shù)值,您在嘗試解析它時可以清楚地看到。
Pranay顯然具有不同的字符集,這就是為什么HIS代碼不起作用的原因。唯一的方法是
int val = '1' - '0';
因為這會在表格中查找整數(shù)值,'0'然后從中減去基數(shù)格式的數(shù)字作為“基值”即可得到原始數(shù)字。
- 3 回答
- 0 關(guān)注
- 1555 瀏覽
添加回答
舉報