2012-05-03 23 views
1

我有一个数组:的NSMutableArray到的NSNumber

12, "+", 56, "+", "", "(", 56, "+", 65, ")"

现在让我们说,我想添加

[NSMutableArray objectAtIndex: 1] + [NSMutableArray objectAtIndex: 3] 

我知道我需要到阵列部件的NSNumber转换,但我找不到任何说如何做到这一点,如果可能的话。另外我应该补充一点,数字是作为NSString放入的,并且改变这将会非常痛苦,并且可以作为最后的手段来完成。

回答

2

您可以从一个字符串像这样得到的NSNumber:

NSString *str = @"222"; 
NSNumber *num = [NSNumber numberWithInt:[str intValue]]; 

所以从一个数组转换为一个NSNumber:

[NSNumber numberWithInt:[[NSMutableArray objectAtIndex: 1] intValue]]; 

但请记住,你不能直接添加2 NSNumber的对象在一起,那就得是这样的:

NSNumber *sum = [NSNumber numberWithInt:([one intValue] + [two intValue])]; 

如果你最终使用浮点值,只需更换intValuefloatValue

+0

非常感谢这正是我需要的! – Osman

1

,你可以不喜欢它

NSNumber *number = (NSNumber*)[NSMutableArray objectAtIndex:1];