NSDictionary のリストを含む NSArray があります。お気に入り:
NSArray *array = ...;
NSDictionary *item = [array objectAtIndex:0];
NSLog (@"quantity: %@", [item objectForKey: @"quantity"]);
配列のすべての辞書に含まれるすべての数量を合計するにはどうすればよいですか?
NSDictionary のリストを含む NSArray があります。お気に入り:
NSArray *array = ...;
NSDictionary *item = [array objectAtIndex:0];
NSLog (@"quantity: %@", [item objectForKey: @"quantity"]);
配列のすべての辞書に含まれるすべての数量を合計するにはどうすればよいですか?
KVCを試すことができると思います
NSMutableArray *goods = [[NSMutableArray alloc] init];
NSString *key = @"quantity";
[goods addObject:@{key:@(1)}];
[goods addObject:@{key:@(2)}];
[goods addObject:@{key:@(3)}];
NSNumber *sum = [goods valueForKeyPath:@"@sum.quantity"];
NSLog(@"sum = %@", sum);
配列で valueForKey: を呼び出すと、そのキーのすべての値の配列が得られるため、[array valueForKey:@"quantity"] は、ループしてすべての値を合計できる配列を提供します。
NSMutableArray *quantityArray = [item objectForKey: @"quantity"];
int total =0;
for(int i=0;i<[quantityArray count];i++)
{
total+= [quantityArray objectAtIndex:i];
}