C#的(int) /int.Parse()/int.TryParse()/Convent.ToInt32()的区别--推荐使用Int.TryParse()
一、(int)变量名[强制类型转换]:
该转换方式主要用于数字类型转换,从int类型到long,float,double,decimal类型,可以使用隐式转换,但是从long类型到int类型就需要使用显式转换,也就是该数据类型转换方式,否则会产生编译错误。
该方式对于浮点数会做无条件舍去,失去精确度。
当然,该方式也可以进行object到int得转换,但是,object的值要赋予int类型的值,否则会产生编译错误,而且object为null时也会出错。
最后切忌的一点,千万不要用来处理char类型到int类型的转换,否则传回的的值是ASCII代码,而并不是你想要的值。
二、int.Parse(string类型变量名)
该方式是将数字内容的字符串转为int类型,如果字符串内容为空或者null时,则抛出ArgumentNullException异常;如果字符串内容不是数字,则抛出FormatException异常;如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常。
使用该方法切忌的一点就是只能处理字符串内容,而且字符串内容只能在int类型可表示的范围之内。
三、int.TryParse(string s, out int result)
该方式也是将数字内容的字符串转为int类型,但是该方式比int.Parse优越的地方,就是它不会出现异常。如果转换成功返回true,如果转换失败返回false。很明显,最后一个参数为输出值,如果转换失败,输出值为0;如果转换成功,则输出相应的值。
四、Convert.ToInt32
该方式不仅可以将字符串转为int类型,还可以将其它类型的值转成int类型。变量若为object或string类型,当其值为null时,会传回0,不会造成程序错误,但是若此string类型的值为string.Empty,在转型成int时,仍会造成程序错误。该方式对于浮点数会做四舍五入。
该方式同强制转换一样,不能用来处理char类型,否则传回的是ASCII代码。
转载于:https://www.cnblogs.com/zhangjie890x/p/5831620.html
C#的(int) /int.Parse()/int.TryParse()/Convent.ToInt32()的区别--推荐使用Int.TryParse()相关推荐
- C# 使用int.TryParse,Convert.ToInt32,(int)将浮点类型转换整数时的区别
int.TryParse,Convert.ToInt32,(int) 这几种类型在将浮点类型转换整数时是有差别 Convert.ToInt32则会进行四舍五入 int.TryParse只能转换整数,即 ...
- (int),Int32.Parse,Convert.ToInt3…
(int)是一种被称为强制转换的显示转换.源变量和目标变量必须是兼容的(必须都是int类型的).并且有丢失数据的风险.因为目标变量的类型大小小于源变量. 从int到long.float.double或 ...
- 【转载】 C#中使用int.TryParse方法将字符串转换为整型Int类型
在C#编程过程中,将字符串string转换为整型int过程中,时常使用的转换方法为int.Parse方法,但int.Parse在无法转换的时候,会抛出程序异常,其实还有个int.TryParse方法可 ...
- (int),Int32.Parse() 和 Convert.toInt32() 的区别
在 C# 中,(int),Int32.Parse() 和 Convert.toInt32() 三种方法有何区别? int 关键字表示一种整型,是32位的,它的 .NET Framework 类型为 S ...
- C#中(int)、Conver.Toint32()、int.Parse()三种类型转换方式的区别与联系--C#基础知识
自己也是刚学习C#程序设计语言,总结了一点知识点,想分享给大家.毕竟刚学习这门语言,学得不深,哪里如果有错误,请帮个忙指出一下哈,谢谢! 1.(int)可用于单精度.双精度等其他数值类型的转换(到整型 ...
- C#中(int)、Conver.Toint32()、int.Parse()三种类型转换方式的区别
1.(int)可用于单精度.双精度等其他数值类型的转换(到整型int),不能用于转换string类型转换为int类型,系统会报错,程序是不能运行. 注意:Double或Float被转换成int类型时, ...
- c#中什么情况下用(int)什么情况下用Convert.ToInt32
1.c#中什么情况下用(int)什么情况下用Convert.ToInt32 ? 比如说有一个string型的3 ,要给它转换成int型的是用(int)3 ,还是用Convert.ToInt32(3 ...
- python中int表示的数据类型是_python中的基本数据类型之 int bool str
一.基本数据类型 1. int ==> 整数.主要用来进行数学运算. 2.str ==> 字符串.可以保存少量的数据,并进行相应的操作. 3.bool => 布尔值.判断 ...
- mysql bigint 运算_mysql中int、bigint、smallint 和 tinyint的区别详细介绍
最近使用mysql数据库的时候遇到了多种数字的类型,主要有int,bigint,smallint和tinyint.其中比较迷惑的是int和smallint的差别.今天就在网上仔细找了找,找到如下内容, ...
最新文章
- C++——auto_ptr与unique_ptr
- Python的包管理工具Pip
- Oracle Flashback Database and Restore Points 说明
- linux sort排序工具和uniq去重工具使用示例
- python 可视化_python可视化基础
- 蓝桥杯 左baby右兄弟
- 如何开始使用Java中的Lambda表达式
- mtk2503电流设定失败
- MySQL经典书籍推荐
- 你真的了解“无纸化办公”了吗?
- error: invalid operands to binary == (have ‘uid_t’ {aka ‘unsigned int’} and ‘kuid_t’
- 中软干两年有用吗_跳槽去中软国际的两大理由?
- HTML5 新特性: Web Worker 的创建与使用(webpack + TS 环境)
- oracle ORA-02292: 违反完整约束条件
- 超级好的6款办公软件,你用过几款呢?
- 图像评价指标——PSNR、SSIM、FID、KID
- Office 365小型企业版同时安装 Office Project 2016 教程
- 攻防世界 MISC 新手练习区 writeup 001-006
- 变量之间的相关性:协方差、相关系数
- 说说共享纸巾的那些事
热门文章
- 【宫水三叶的刷题日记】497. 非重叠矩形中的随机点(中等)
- navicat 如何卸载干净
- 15个牛奶妙招 打造奶漾肌肤
- 1 运筹笔记-随机规划(Stochastic Programming)
- 按位与、按位或、按位异或、按位取反、按位左移、按位右移
- 解决处理Windows server 2016远程桌面授权
- 【Charles】小米手机安装证书问题
- ios 渐变透明背景_Web设计新趋势 | 教你轻松玩转设计中渐变~
- 分支覆盖率 代码覆盖率_100%代码覆盖率神话
- python 批量替换srt文本_自动生成srt格式的脚本(Python实现)