Convert、Parse、TryParse、(int) 的区别

简介: 1、 (int)变量名[强制类型转换]:       该转换方式主要用于数字类型转换,从int类型到long,float,double,decimal类型,可以使用隐式转换,但是从long类型到int类型就需要使用显式转换,也就是该数据类型转换方式,否则会产生编译错误。       该方式对于浮点数会做无条件舍去,失去精确度       当然,该方式也可以进行object到i

1、 (int)变量名[强制类型转换]

      该转换方式主要用于数字类型转换,从int类型到long,float,double,decimal类型,可以使用隐式转换,但是从long类型到int类型就需要使用显式转换,也就是该数据类型转换方式,否则会产生编译错误。

      该方式对于浮点数会做无条件舍去,失去精确度

      当然,该方式也可以进行objectint得转换,但是,object的值要赋予int类型的值,否则会产生编译错误,而且objectnull时也会出错。

      最后切忌的一点,千万不要用来处理char类型到int类型的转换,否则传回的的值是ASCII代码,而并不是你想要的值。

2 、int.Parse(string类型变量名)

      该方式是将数字内容的字符串转为int类型,如果字符串内容为空或者null时,则抛出ArgumentNullException异常;如果字符串内容不是数字,则抛出FormatException异常;如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常。

      使用该方法切忌的一点就是只能处理字符串内容,而且字符串内容只能在int类型可表示的范围之内。

3 、int.TryParse(string s, out int result)

      该方式也是将数字内容的字符串转为int类型,但是该方式比int.Parse优越的地方,就是它不会出现异常。如果转换成功返回 true,如果转换失败返回 false。很明显,最后一个参数为输出值,如果转换失败,输出值为 0;如果转换成功,则输出相应的值。

4 、Convert.ToInt32

      该方式不仅可以将字符串转为int类型,还可以将其它类型的值转成int类型。变量若为objectstring类型,当其值为null时,会传回0,不会造成程序错误,但是若此string类型的值为string.Empty,在转型成int时,仍会造成程序错误。

      该方式对于浮点数会做四舍五入。

      该方式同强制转换一样,不能用来处理char类型,否则传回的是ASCII代码。

 

相关文章
|
11月前
|
关系型数据库 MySQL C++
Error:E0415 no suitable constructor exists to convert from “int“ to “Rational“
Error:E0415 no suitable constructor exists to convert from “int“ to “Rational“
123 0
Convert、Parse、TryParse、(int) 的区别
1、 (int)变量名[强制类型转换]:       该转换方式主要用于数字类型转换,从int类型到long,float,double,decimal类型,可以使用隐式转换,但是从long类型到int类型就需要使用显式转换,也就是该数据类型转换方式,否则会产生编译错误。       该方式对于浮点数会做无条件舍去,失去精确度       当然,该方式也可以进行object到i
927 0
使用convert 怎样样转换 int 成 nvarchar(128)?
1.第一种方法:cast(ticketType as nvarchar(128)) 2.第二种方法:convert( nvarchar(128) ,ticketType)
686 0
|
8天前
|
数据采集 分布式计算 数据处理
Dataphin常见问题之与指定类型int不兼容如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。
|
8天前
|
SQL 流计算 OceanBase
OceanBase CDC从热OB库采集过来的Tinyint(1)类型会默认转换成Boolean,请教一下,如果想转换成int类型,有什方法么?
【2月更文挑战第25天】OceanBase CDC从热OB库采集过来的Tinyint(1)类型会默认转换成Boolean,请教一下,如果想转换成int类型,有什方法么?
33 3
|
4天前
channelSftp.put(InputStream src, String dst, int mode);里的mode都是什么类型的
【5月更文挑战第15天】channelSftp.put(InputStream src, String dst, int mode);里的mode都是什么类型的
34 2
|
8天前
|
关系型数据库 MySQL Java
Java时间转换为MySQL中的INT类型时间戳
Java时间转换为MySQL中的INT类型时间戳
|
6月前
|
JSON 小程序 JavaScript
小程序根据返回值的int类型渲染不同的状态
小程序根据返回值的int类型渲染不同的状态
70 0

热门文章

最新文章