添加NSMutableArray中的所有值

Jon*_*asG 0 cocoa-touch objective-c nsmutablearray ios

我有一个NSMutableArray,包含x不同的NSStrings(NSString但只有数字没有字母).我想将所有值相加以返回单个float或int.我想我必须用for循环来做这个,但我对for循环非常不熟悉......好吧我已经达到了这一点:

for (NSString *a in det) 
{
   float x = [a floatValue];
   NSLog(@"%.2f",x);
}
Run Code Online (Sandbox Code Playgroud)

这将在'NSLog`中返回所有这样的值:

23.00
8.00
61.00
...
Run Code Online (Sandbox Code Playgroud)

我怎么才能把它们加起来呢?

Sha*_*i K 14

您可以避免循环,而是使用key value coding并获取总数

    NSMutableArray *arr = [NSMutableArray arrayWithObjects:@"1.1", @"2.2", @"3.1", nil];
    NSNumber *sum = [arr valueForKeyPath:@"@sum.floatValue"];
Run Code Online (Sandbox Code Playgroud)

可变金额为6.4.


Pat*_*ini 5

试试这个:

float total = 0;
for(NSString *str in det)
{
    total += [str floatValue];
}
Run Code Online (Sandbox Code Playgroud)