『C#』Convert.ToInt32 和 Int32.Parse 有什么区别?

本文最后更新于 2019年 4月 20号 下午 2点 14分,并同步发布于 :


1. 参数类型不同

  • Int32.Parse方法的参数类型为 System.String
  • Convert.ToInt32方法的参数支持C#所有基本类型。

2. 对null参数的处理方法不同

  • Int32.Parse方法抛出System.ArgumentNullException异常。
  • Convert.ToInt32方法返回数字0

  • 另外 Convert.ToInt32方法的参数是 浮点数 类型时,采取 四舍六入
  • 而对于 #.5(如 1.5, 2.5), 则返回离这个数最近的偶数 (如 1.5 返回 2, 而 4.5 返回 4)。
  • 如果Convert.ToInt32方法的参数是System.Object类型, 那么这个参数必须继承 IConvertible接口。否则会抛出 System.InvalidCastException异常
    附上.NET Framework 4.7.2 源码 :

测试 :


---END---

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、Convert.ToDouble 与 Double.Parse 的区别。实际上 Convert.ToDoubl...
    Kizuk1阅读 302评论 0 0
  • c#语法 .net入门学习:感觉除了定义个类,就是无限的调用方法,然后就是读写数据库。这也许就是.net入门容易,...
    CLJnong阅读 326评论 0 0
  • 一个卖瓷碗的老人挑着扁担在路上走着,突然一个瓷碗掉到地上摔碎了,但是老人头也不回继续向前走。路人看到很奇怪,便问:...
    蔡秋茹阅读 77评论 0 0
  • 【萌姐60s复盘】180614-day14 现阶段目标:咬字清晰 不足:超时完成,录到一半睡着了,调整目标,先完成...
    张雅梅May阅读 47评论 0 0
  • git init git add README.md git commit -m "first commit" g...
    飞奔的千里眼阅读 3,863评论 0 1