黑马程序员--c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别

 

1、(int)是一种类型转换;当我们从int类型到double,decimal类型,可以使用隐式转换。
2、int.Parse()是一种内容转换;表示将数字内容的字符串转为int类型。
如果字符串为空,则抛出ArgumentNullException异常;
如果字符串内容不是数字,则抛出FormatException异常;
如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常;
3、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)Convert.ToInt32的参数比较多,Int.Parse只能转换string类型的.
(2)Parse就是把String转换成int,char,double....等,也就是*.Parse(string) 括号中的一定要是string.
(3)Convert可以提供多种类型的转换,也就是Convert.*()括号中可以为很多种类型(包括string).

 

posted @ 2012-11-26 12:53  韩俊  阅读(141)  评论(0编辑  收藏  举报