Encuentre el promedio de un NSMutableArray con valueForKeyPath
Actualmente estoy tratando de encontrar una manera compacta depromedio de una matriz. La solución obvia es sumar la matriz, luego dividir por el número de elementos. Sin embargo, me he encontrado con un método en el sitio web para desarrolladores de Apple que afirma que esto se puede hacer de una manera más simple utilizando valueForKeyPath. Esto está vinculado aquí:
Aquí está el ejemplo en el que estoy trabajando actualmente para intentar que funcione:
-(void)arrayAverager
{
NSMutableArray *myArray = [NSMutableArray arrayWithCapacity:25];
[myArray addObject:[NSNumber numberWithInteger:myValue]];
NSNumber *averageValue = [myArray valueForKeyPath:@"@avg.self"];
NSLog(@"avg = %@", averageValue);
}
losproblema es: en lugar de promediar la matriz, simplemente imprime los elementos de la matriz 1 por 1.
ACTUALIZAR
-(void) pixelAverager
{
//Put x-coordinate value of all wanted pixels into an array
NSMutableArray *xCoordinateArray = [NSMutableArray arrayWithCapacity:25];
[xCoordinateArray addObject:[NSNumber numberWithInteger:xCoordinate]];
NSLog(@"avg = %@", [xCoordinateArray valueForKeyPath:@"@avg.intValue"]);
}