2014-02-26 21 views

回答

1

public void roundOut (Rect dst)

Added in API level 1 

四捨五入「了」這個矩形,選擇 頂部的地板和左,右側和底部的上限設置DST整數矩形。

public static double floor (double d)

在API級別1

返回最積極的(最接近 正無窮大)的整數值小於或等於自變量的雙轉換。

特殊情況是:

floor(+0.0) = +0.0 
floor(-0.0) = -0.0 
floor(+infinity) = +infinity 
floor(-infinity) = -infinity 
floor(NaN) = NaN 

public static double ceil (double d) 在API級別1

返回最負(最接近 負無窮大)的整數值大於或等於的雙變換到 的說法。

特殊情況是:

ceil(+0.0) = +0.0 
ceil(-0.0) = -0.0 
ceil((anything in range (-1,0)) = -0.0 
ceil(+infinity) = +infinity 
ceil(-infinity) = -infinity 
ceil(NaN) = NaN 
RectF rectF = new RectF(0.0f, 0.0f, 10.5f, 20.f); 
Rect rect = new Rect(); 
rectF.roundOut(rect);// Now rect will contains these values Rect(0, 0, 11, 20) 

//What happens inside roundOut function 
Math.floor(0.0f);//Results 0 
Math.floor(0.0f);//Results 0 
Math.ceil(10.5f);//Results 10 
Math.ceil(20.f);//Results 20 
+0

將你的建議實現上述功能的示例代碼? – Strawberry

+0

編輯答案。 – Triode

+0

'rectF.roundOut(new Rect(0,0,30,35));'在此之後,rectf將如何改變? – Strawberry

1

rountRect會給你一個Rect對象。

所以

Rect rect = new Rect(); 

    rectFObj.roundout(rect); 

現在RECT包含RectF對象的所有值,但他們現在四捨五入意味着1.1變爲1