2
第一篇文章在這裏。在NSNumber的floatValue方法有問題 - 不知何故,它返回一個不精確的數字。這裏的問題:我存儲一串NSNumbers的在陣列中,像這樣:NSNumber floatValue不等於NSNumber的值
NSArray *a = [NSArray arrayWithObjects:
[NSNumber numberWithFloat:0.04f],
[NSNumber numberWithFloat:0.028f],
[NSNumber numberWithFloat:0.016f],
[NSNumber numberWithFloat:0.004f],
nil];
然後我嘗試檢索(例如)的第一個值: 的NSNumber N =(NSNumber的)[αobjectAtIndex: 0]; CGFloat f = [n floatValue];
在調試程序中,n表示的0.04的值(在摘要列),但2f示出的0.0399999991的值。我在這裏做錯了什麼?
謝謝大家。
清除它,謝謝。換句話說,除非你先將它們四捨五入,否則絕對不要與浮點數進行==比較。謝謝。 – Mirkules 2010-05-14 07:37:41