2012-05-03 54 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];