web-dev-qa-db-ja.com

NSArrayからNSNumberの合計をどのように取得しますか?

NSArrayを含むNSNumbersのような3, 4, 20, 10, 1, 100,など...

これらすべてのNSNumbersの合計を取得するにはどうすればよいですか(3 + 4 + 20 + 10 + 1 + 100 + etc...) 1つの合計としてNSInteger

ありがとうございました!

24
Winston
NSInteger sum = 0;
for (NSNumber *num in myArray) {
  sum += [num intValue];
}
20
Alladinian

あなたはこれを使うことができます:

NSArray* numbers = //array of numbers
NSNumber* sum = [numbers valueForKeyPath: @"@sum.self"];
157
Paul de Lange
long long sum = ((NSNumber*)[array valueForKeyPath: @"@sum.longLongValue"]).longLongValue;

配列を反復する

int count = [array count];
NSInteger sum = 0;
for (int i = 0; i < count; i++) {
    sum += [[array objectAtIndex:i] integerValue];
}
4
Alexander
[[numbersArray valueForKeyPath:@"@sum.self"] integerValue]
3
diederikh
int total = 0;
for (NSNumber *number in array)
{
  total += [number intValue];
}

これはあなたを助けるかもしれません

2
Abhishek