在我的 NSMutable 数组中的所有项目中应用乘法和除法


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(获取整数或双精度数或其中的任何内容 - 使用 integerValuedoubleValue 或任何合适的东西),进行算术运算,然后将结果包装为 NSNumber(使用 initWithDouble: 或其他方法)并将其粘贴回数组中。

最新更新