简体   繁体   中英

ios - How get the total sum of float from a NSMutableArray

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM