黑马程序员技术交流社区
标题:
在C#中Convert.Toint32与int.TryParse的区别!
[打印本页]
作者:
net
时间:
2013-3-17 20:49
标题:
在C#中Convert.Toint32与int.TryParse的区别!
本帖最后由 net 于 2013-3-18 08:47 编辑
在C#中Convert.Toint32 和 int.TryParse 虽然都是转换为整数的类型,但他们在用法上有什么不同?在什么情况下用Convert.Toint32,什么情况下用 int.TryParse?还有它们有什么本质上的区别?
作者:
许庭洲
时间:
2013-3-17 21:19
1。Convert.ToInt32,将字符串转为int类型,还可以将其它类型的值转成int类型。变量若为object或string类型,当其值为null时,会传回0,不会造成程序错误,但是若此string类型的值为string.Empty,在转型成int时,仍会造成程序错误。
2。 int.TryParse,将数字内容的字符串转为int类型,如果字符串内容为空或者null时,则抛出ArgumentNullException异常;如果字符串内容不是数字,则抛出FormatException异常;如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常。
作者:
net
时间:
2013-3-18 08:50
许庭洲 发表于 2013-3-17 21:19
1。Convert.ToInt32,将字符串转为int类型,还可以将其它类型的值转成int类型。变量若为object或string类型 ...
嗯!谢谢您的回答,让我了解了一个新的知识!
作者:
李稳
时间:
2013-3-20 12:53
我只知道这个 ToInt32 内部是这样实现的。。
public static int ToInt32(string value)
{
if (value == null)
{
return 0;
}
return int.Parse(value, CultureInfo.CurrentCulture);
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2