C#之Int32.Parse与Convert.ToInt32()

关于int.Parse()的异常

一、int.Parse(string 变量名)

该方式是将数字内容的字符串转换为int类型:
1.如果字符串的内容为Null ,则抛出ArgumentNullException异常;
2.如果字符串内容不是数字,则抛出FormatException异常;
3.使用该方法只能处理字符串的内容,而且转换后的字符串内容要在int类型的可表示范围之内,若超出,则抛出OverflowException异常。

二、在网上搜索相关内容,Convert.ToInt32()、int.Parse()、int.TryParse()、(int)这些函数都可以将其他类型转化为int型

1.Convert.ToInt32()与int.Parse()的区别:
(1)这两个方法的最大不同是它们对NULL值的处理方法:
Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常。
(2)当参数是浮点数时:
a. Convert.ToInt32(double value)
如果 value 为两个整数中间的数字,则返回二者中的偶数;即 3.5转换为4,4.5 转换为 4,而 5.5 转换为 6。 不过4.6可以转换为5,4.4转换为4
b. int.Parse(“4.5”)
直接报错:“输入字符串的格式不正确”
(3)转换对象不同:
a.int.Parse是转换String为int
b.Convert.ToInt32是转换继承自Object的对象为int的
当你得到一个object对象,你想把它转换为int,用int.Parse就不可以,要用Convert.ToInt32.
2.int.TryParse()与int.Parse():
int.TryParse()与 int.Parse() 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。
最后一个参数为输出值,如果转换失败,输出值为 0,如果转换成功,输出值为转换后的int值
3.关于(int):
(int)是一种类型转换;当我们把int类型转换到long,float,double,decimal类型,可以使用隐式转换,但是当我们从long类型到int类型就需要使用显式转换,否则会产生 编译错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值