[C#]Int32.TryParse()、int.Parse和Convert.ToInt32的区别

【前言】

稍微了解一点C#的话可能会知道类型转换有好几种方法,目前看C#视频中讲到了两种方法,分别是int.Parse和Convert.ToInt32,但是这两者有什么区别呢?它们有什么相同点和不点呢?请看下文。

【正文】

在如下C#例子中两种方法都能正确的执行所要表达的代码。

这里写图片描述

int age = Convert.ToInt32(strNUM);
int age1 = int.Parse(strNUM);

这两行代码所表达的意思是一样的,都是为了把字符串类型(str)转化为整形(int),这个时候他们的作用是一样的。

他们的区别是什么呢?经过百度查询, Convert.toInt32()表示可以将多种类型(包括 object 引用类型)的值转换为 int 类型;Int.Parse()表示将数字的字符串转换为32位有符号整数,属于内容转换;Int32.TryParse 与 int.Parse 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。

性能差异:nt32.TryParse()优于Int32.Parse()优于Convert.ToInt32()。
Convert.ToInt32会把最终的解析工作代理给Int32.Parse,而Int32.Parse和Int32.TryParse则分别把解析工作直接代理给Number.ParseInt32和Number.TryParseInt32,前者在出现解析,错误时会抛出异常,而后者则仅仅返回 false。

更详细的差异比较后续更新喔~

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值