你的位置:首页 > ASP.net教程

[ASP.net教程]浮点型float数据强制转换成int整型


 

问题:如下代码 想获取某两个Decimal类型数之间的商的大小,结果偶尔出错(请注意是 偶尔)             

Decima t1;

Decima t2;

int shang =Convert.ToInt32(t1 / t2) ;

解决方法:将Decimal类型数据强制转换成INT整型时  会有四舍五入的过程。如下,需要用Math.Truncate方法来取整数位。所以区商时必须用此方法取整

问题代码:

Decima t1=1.2m;

Convert.ToInt32(t1)  得到1

Decima t2=1.7m;

Convert.ToInt32(t2)  得到2

改成以下代码后:

 

Decima t1=1.2m;

Convert.ToInt32(Math.Truncate(t1))  得到1

Decima t2=1.7m;

Convert.ToInt32(Math.Truncate(t2))  得到1