問題:如下代碼 想獲取某兩個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