如果我可能會提出兩個簡單的問題,那麼我應該如何處理兩個NSNumber對象,執行計算並最終得到一個也是NSNumber的結果?NSNumber計算和精度?
NSNumber *flux = [[NSNumber alloc] initWithDouble:100.0];
NSNumber *mass = [[NSNumber alloc] initWithDouble:3];
double intermediate = [flux doubleValue]/[mass doubleValue];
NSLog(@"INTER : %.20f", intermediate);
NSNumber *result = [[NSNumber alloc] initWithDouble:intermediate];
NSLog(@"RESULT: %@", result);
...
...
[flux release];
[mass release];
[result release];
另外從NSLog看在控制檯的結果,是否有任何精度損失?我會假設沒有,我所看到的只是顯示精度,但只是好奇?
INTER : 33.33333333333333570181
RESULT: 33.33333333333334
加里
我相信你誤解了這個問題。 – 2010-02-25 12:32:29
更像是我在一條正切線上。我編輯澄清。 – TechZen 2010-02-25 12:36:57
謝謝,很高興知道NSDecimal,我會看看。 – fuzzygoat 2010-02-25 13:48:34