2012-01-03 44 views
2

我試圖使UILabel以小數爲單位進行計數,但它四捨五入到最接近的整數。這裏是代碼:當我嘗試+2.50時,NSString四捨五入到最接近的整數

int currentTime = [totalPrice.text intValue]; 
    int newTime = currentTime + 2.50; 
    totalPrice.text = [NSString stringWithFormat:@"%d.00", newTime]; 

我在做什麼錯?

P.S.我無法在StackOverflow上找到任何有用的其他文章。

回答

3

int是隻存儲整數(整數)的數據類型。如果需要精確表示,請使用floatdouble作爲十進制數字,或使用NSDecimalNumber。

float currentType = [totalPrice.text floatValue]; 
float newTime = currentTime + 2.5; 
totalPrice.text = [NSString stringWithFormat:@"%.2f", newTime]; 
+0

謝謝! – 2012-01-03 03:55:55

2

如果您打算使用這樣的小數,那麼您應該對這些值使用float類型。

int是爲了與整數一起使用。

+0

感謝您的評論! – 2012-01-03 03:56:03