NSMutableArray *numberOfRides = [NSMutableArray array];
for (NSInteger i=0; i<30; i++)
[numberOfRides addObject:[NSNumber numberWithInteger:i]];
NSMutableArray*targetDollarAdd = numberOfRides;
for (NSInteger e=0; e<30; e++)
[targetDollarAdd replaceObjectAtIndex:e withObject:[NSNumber numberWithDouble:e] * [NSNumber numberWithDouble:2.75];
我对编程是全新的。我试图将数组中的所有内容乘以 2.75,但我不断收到错误。我尝试过搜索,但一切似乎对我来说都取得了进展。
你不能将 NSNumbers 相乘。它们不是数字!它们是包装数字的对象。
但是你不能在NSArray中保留数字。它们不是物体!这就是NSNumber的用途:将一个数字包装在一个对象中,这样你就可以做一些事情,比如把它保存在NSArray中。哦,讽刺!
因此,要在 NSNumber上进行算术运算,请解开 NSNumber(获取整数或双精度数或其中的任何内容 - 使用 integerValue
或 doubleValue
或任何合适的东西),进行算术运算,然后将结果包装为 NSNumber(使用 initWithDouble:
或其他方法)并将其粘贴回数组中。