double x = 13.52645 ;
double y = 49.99999 ;
無條件捨去到小數點以下1位 (int)(Math.floor(x*10))/10.0 );
無條件捨去到小數點以下2位 (int)(Math.floor(y*100))/100.0 );
無條件捨去到小數點以下3位 (int)(Math.floor(y*1000))/1000.0 );
四捨五入到小數點以下1位 (int)(Math.round(x*10.0))/10.0 );
四捨五入到小數點以下2位 (int)(Math.round(x*100.0))/100.0);
四捨五入到小數點以下3位 (int)(Math.round(x*1000.0))/1000.0 );
Math.round()方法取小數位數:
比如說3.14159要精確到.001位,則先3.14159/.001,然後再Math.round(3.14159/.001),最後在把結果乘以需要精確的位數Math.round(3.14159/.001)*.001
trace(Math.round(3.14159/.001)*.001); //輸出3.142
trace(Math.round(3.14159/.01)*.01); //輸出3.14
如果不想四捨五入,那直接改round()方法為floor()或者ceil()方法即可
toFixed()方法取小數位數:
直接指定toFixed()中的參數即可,比如要留兩位小數,則toFixed(2)
var temp:Number=3.1415926
trace(temp.toFixed(1)); //輸出3.1
temp=18.888;
trace(temp.toFixed(2)); //輸出18.89