[.net]小數不進位,取得整數值...

在vb.net中,Option Strict Off 的情況下
將數字 9.5 強制轉型的整數(CInt(9.5))的話會變成10
因為在 Option Strict On 之下不允許將 Double 型別隱含轉換為 Integer 型別

有時侯我們只想取得整數值,不希望進位或四捨五入運算時…

MyNumber = CInt(99.8) ' Returns 100.
MyNumber = CInt(-99.8) ' Returns -100.
MyNumber = CInt(-99.2) ' Returns -99.

您可以先呼叫 Fix 或 Int,然後在結果使用 CInt 函式,這樣就可明確轉換為整數而不需捨入。例如:

MyNumber = CInt(Fix(99.8)) ' Returns 99.
MyNumber = CInt(Int(99.8)) ' Returns 99.

留言

這個網誌中的熱門文章

嘗試卸載資料庫時,發生資料庫正在使用的而無法卸載的可能解決方案

ASP.NET常用的RegularExpressionValidator驗證