这两个方法我们经常在使用,但是它们之间有什么区别呢,下面的代码让你比较清晰的明白区别所在:

   1:              string convertToInt = "12";
   2:              string nullString = null;
   3:              string maxValue = "32222222222222222222222222222222222";
   4:              string formatException = "12.32";
   5:   
   6:              int parseResult;
   7:   
   8:              // It will perfectly convert interger
   9:              parseResult = int.Parse(convertToInt);
  10:   
  11:              // It will raise Argument Null Exception
  12:              parseResult = int.Parse(nullString);
  13:   
  14:              //It willl raise Over Flow Exception
  15:              parseResult = int.Parse(maxValue);
  16:   
  17:              //It will raise Format Exception
  18:              parseResult = int.Parse(formatException);
  19:   
  20:   
  21:              //For Convert.ToInt32
  22:   
  23:              //It will perfectly convert integer
  24:              parseResult = Convert.ToInt32(convertToInt);
  25:   
  26:              //It will ouput as 0 if Null string is there
  27:              parseResult = Convert.ToInt32(nullString);
  28:   
  29:              //It will raise Over Flow Exception
  30:              parseResult = Convert.ToInt32(maxValue);
  31:   
  32:              //It will raise Format Exception
  33:              parseResult = Convert.ToInt32(formatException);

           区别就是Convert.ToInt32(string) 方法遇到空时会返回0,而Int.Parse则会Throw Exception. 我们还可以使用Int32.TryParse方法更加安全。

希望这篇POST对您开发有帮助。


作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
该文章也同时发布在我的独立博客中-Petter Liu Blog

posted on 2010-11-29 10:24  PetterLiu  阅读(1687)  评论(2编辑  收藏  举报