从可以操作的数组中检索数字

时间:2013-05-19 18:05:46

标签: objective-c arrays int

我正在尝试检索存储在数组中的数字,以便我可以在以后操作它。

例如我在数组中有一个总和,即500,我想将该数字除以x。

这将如何实现?

到目前为止我有这个并且它不起作用:

NSError *error;
NSArray *level4results = [context executeFetchRequest:request error:&error];
NSLog(@"%@", level4results);//check sum value of array

int l4sum = ((int)[level4results indexOfObject:0]) / 7;
NSLog(@"%d", l4sum); //check if l4sum gets values passed
输出是:

      2013-05-19 18:50:49.648 bla.v1[6254:c07] (
        {
        sumValue = 633;
    }
)
2013-05-19 18:50:49.650 bla.v1[6254:c07] 306783378

2 个答案:

答案 0 :(得分:0)

int”和“float”等C类型不是Objective-C对象,无法直接保存在Objective-C“NSArrays”中。

但您可以使用Objective-C“NSNumber”对象在数组中设置和获取数字。

看起来你的数组中的IS是“NSDictionary”。

E.G:

NSDictionary * dictionaryFromArray = [level4results indexOfObject: 0];
if(dictionaryFromArray)
{
    NSNumber * sumNumber = [dictionaryFromArray objectForKey: @"sumValue];
    if(sumNumber)
    {
         int l4sum = [sumNumber intValue];

         l4sum = (l4sum / 7);
    }
}

答案 1 :(得分:0)

您是否尝试使用[level4results objectAtIndex:0]而不是[level4results indexOfObject:0]?