2012-02-27 134 views
-1

我怎麼能追加一個NSMutableArray到另一個,從我所看到的,它聽起來相當直截了當。但我得到了一些奇怪的結果,我認爲我的臨時數組中的項目數量正在增加,但字典值正在丟失。Obj-C,我怎樣才能追加一個NSMutableArray到另一個?

這是我當前的代碼,在這裏我只是簡單地覆蓋我的self.transactionArray

h - file 
NSMutableArray *transactionArray; 
@property (nonatomic, retain) NSMutableArray *transactionArray; 

m - file 
NSMutableArray *arrayTmp= [[NSMutableArray alloc] init]; 

//start loop 
[arrayTmp addObject:[NSDictionary dictionaryWithObjectsAndKeys:desc,@"desc", 
     due,@"due",nil]]; 
//release nsstring desc etc 
//end loop 

self.transactionArray = arrayTmp; 

[arrayTmp release]; 

我的第二次嘗試......

NSMutableArray *array1 = [arrayTmp mutableCopy]; 
[self.transactionArray addObjectFromArray:array1]; 

這是我第一次嘗試......

[self.transactionArray addObjectFromArray:arrayTmp]; 

我在做什麼錯了?

回答

5

可以是這樣做的:

[self.transactionArray addObjectsFromArray:arrayTmp]; 

而且在一個側面說明,請務必發佈提問之前,閱讀文檔。該方法很容易在NSMutableArray文檔中找到。

+0

聽起來像transactionArray是一個'NSArray',所以我不認爲這將工作。 – 2012-02-27 20:25:56

+0

他說他想將一個「NSMutableArray」追加到另一個。這意味着它們都是可變的。 – edc1591 2012-02-27 20:26:56

+0

他只添加一個對象,並且在第一個示例中正確使用了'addObject:',這讓我相信有一些東西阻止他在原始數組上使用該方法。 – 2012-02-27 20:29:55

0

您可能有一個錯字。看看NSMutableArray method

- (void)addObjectsFromArray:(NSArray *)otherArray 
+0

試過'[self.transactionArray addObjectsFromArray:arrayTmp];' – Jules 2012-02-27 20:36:57

+0

試過了,*發生了什麼事?* – JoePasq 2012-02-27 20:39:05

+0

「但是我收到了一些奇怪的結果,我認爲我的臨時陣列中的項目數量正在增加,但字典值正在丟失。「 – Jules 2012-02-27 20:42:37

相關問題