I created a NSMutableArray which contains a lot of NSString and float
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];
I add the object in my array "[[ArrayBuying instance] tableau]"
How can I get the total sum of the float variables ?
Thank you
Key-Value coding:
NSNumber *sum = [[[ArrayBuying instance] tableau] valueForKeyPath:@"@sum.price"];
gives the sum of the "price" attribute of all the objects in the array.
To make this work with your custom objects, price
should be a property of DataOrder
.
Also if you didn't create any property/attribute, you can do like:
NSNumber *sum = [anArray valueForKeyPath:@"@sum.floatValue"];
or
float sum = [[anArray valueForKeyPath:@"@sum.floatValue"] floatValue];
Something like this will work:
float total = 0;
for (DataOrder *client in [[ArrayBuying instance] tableau]) {
total += client.price;
}
NSLog(@"total = %f", total);
I'm just guessing that your DataOrder
class has a price
property. Use what you really have.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.