0

我创建了一个包含很多 NSString 和 float 的 NSMutableArray

DataOrder *addClient = [[DataOrder alloc ] initWithName:[[DataOrder instance]product] price:[[DataOrder instance]price] taille:[[DataOrder instance]taille] suplement:[[DataOrder instance]suplement]];    
[[[ArrayBuying instance] tableau]addObject:addClient];

我在我的数组“[[ArrayBuying instance] tableau]”中添加对象

如何获得浮点变量的总和?

谢谢

4

3 回答 3

3

键值编码:

NSNumber *sum = [[[ArrayBuying instance] tableau] valueForKeyPath:@"@sum.price"];

给出数组中所有对象的“价格”属性的总和.

要使其与您的自定义对象一起使用,price应该.DataOrder

于 2013-11-12T19:28:02.400 回答
3

此外,如果您没有创建任何属性/属性,您可以这样做:

NSNumber *sum = [anArray valueForKeyPath:@"@sum.floatValue"];

或者

float sum = [[anArray valueForKeyPath:@"@sum.floatValue"] floatValue];
于 2014-03-29T18:07:32.003 回答
2

像这样的东西会起作用:

float total = 0;
for (DataOrder *client in [[ArrayBuying instance] tableau]) {
    total += client.price;
}

NSLog(@"total = %f", total);

我只是猜测你的DataOrder班级有一个price财产。使用你真正拥有的东西。

于 2013-11-12T19:28:11.323 回答