使用Integer.TryParse有什么问题?多数民众赞成在... ...
int i = 0; string toTest = "not number"; if(int.TryParse(toTest, out i)) { // it worked }
那笨重怎么样?(C#不是VB我知道,但相同的差异)
编辑:添加,如果你想从一个对象检查(因为TryParse依赖于一个字符串),我不太确定你如何实际计划使用它.这是否可以解决您的问题,因为这种方法会检查您的两种情况?
static bool TryParseInt(object o, out int i) { i = 0; if (o.GetType() == typeof(int)) { i = (int)o; return true; } else if (o.GetType() == typeof(string)) { return int.TryParse(o as string, out i); } return false; }