Char.IsDigit与Char.IsNumber的区别[转]
需要判斷Char是否為數(shù)字,查看了下MSDN,發(fā)現(xiàn)有三種方法:
Char.IsDigit (aChar) ? ? ? ? ? ? ?指示指定字符串中位于指定位置處的字符是否屬于十進制數(shù)字類別
Char.IsNumber(aChar) ? ? ? ?指示指定字符串中位于指定位置的字符是否屬于數(shù)字類別
aChar>='0'&&aChar<='9' ? ? 判斷aChar是否位于‘0’到‘9’之前 ?等同于第一種
?
用.NET Reflector 查看其實現(xiàn)代碼:
public?static?bool?IsNumber(char?c)??public static bool IsNumber(char c) { if (!IsLatin1(c)) { return CheckNumber(CharUnicodeInfo.GetUnicodeCategory(c)); } if (!IsAscii(c)) { return CheckNumber(GetLatin1UnicodeCategory(c)); } return ((c >= '0') && (c <= '9')); }
public?static?bool?IsDigit(char?c)??public static bool IsDigit(char c) { if (!IsLatin1(c)) { return (CharUnicodeInfo.GetUnicodeCategory(c) == UnicodeCategory.DecimalDigitNumber); } return ((c >= '0') && (c <= '9')); }
?
Char.IsNumber 多了一步檢查ASCII碼。。。
轉載于:https://www.cnblogs.com/junbird-nest/archive/2012/05/29/2523664.html
總結
以上是生活随笔為你收集整理的Char.IsDigit与Char.IsNumber的区别[转]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 北京周聪项目客商支付join用法
- 下一篇: 博客开张第一篇