浅析四种C#转换的区别

C#转换中的(int):

(int)是一种类型转换;当我们从int类型到long,float,double,decimal类型,可以使用隐式转换,但是当我们从long类型到int类型就需要使用显式转换,否则会产生编译错误。

C#转换中的int.Parse():

int.Parse()是一种类容转换;表示将数字内容的字符串转为int类型。如果字符串为空,则抛出ArgumentNullException异常;   如果字符串内容不是数字,则抛出FormatException异常;如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常;

C#转换中的int.TryParse :

int.TryParse 与 int.Parse 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。   最后一个参数为输出值,如果转换失败,输出值为 0 4 Convert.ToInt32()是一种类容转换;但它不限于将字符串转为int类型,还可以是其它类型的参数;

比较:  

Convert.ToInt32 参数为 null 时,返回 0;

int.Parse 参数为 null 时,抛出异常。   

Convert.ToInt32 参数为 "" 时,抛出异常; 

int.Parse 参数为 "" 时,抛出异常。  

Convert.ToInt32 可以转换的类型较多;

int.Parse 只能转换数字类型的字符串。

【编辑推荐】

  1. C#发送Email邮件的方法解析
  2. 解析C#中is和as操作符的用法
  3. C# Excel COM组件的使用
  4. 如何判断C#字符串是全角还是半角
  5. C#语言规范之小结
THE END