2013-05-22 146 views
0

我想從一個嵌套在另一個數組中的數組中刪除一個項目,但嘗試我可能無法讓代碼工作。Xcode - 如何從數組中的數組中刪除項目?

這是我在我的代碼:

NSArray *array1 =[[NSArray alloc] initWithObjects:@"1",@"2",@"3",@"4",@"5",nil]; 
    NSArray *array2 =[[NSArray alloc] initWithObjects:@"a",@"b",@"c",@"d",@"e",nil]; 
    NSArray *array3 =[[NSArray alloc] initWithObjects:@"10",@"9",@"8",@"7",@"6",nil]; 

    NSMutableArray *arrayOfArrays = [[NSMutableArray alloc] initWithObjects:array1,array2,array3, nil]; 

然後我用的NSLog顯示我想刪除哪個項目。

NSLog(@"Array item 1 position 3 = %@", [[arrayOfArrays objectAtIndex:1] objectAtIndex:3]); 

這會返回正確的「d」。

所以現在我要刪除該項目使正在嘗試使用下面的代碼:當它運行並點擊了上面的行,我得到以下

NSMutableArray *subArray = [[NSMutableArray alloc] initWithObjects:arrayOfArrays [1], nil]; 
    [[subArray objectAtIndex:0] removeObjectAtIndex:3]; 

2013年5月22日14:19:01.070數組演示[6958:303] *由於未捕獲異常'NSRangeException',原因:'* - [__ NSArrayM objectAtIndex:]:索引1超出範圍[0..0]' *第一次撥打電話: ( 0的CoreFoundation 0x00007fff8e9d0b06 __exceptionPreprocess + 198 1周libobjc.A.dylib 0x00007fff922953f0 objc_exception_throw + 43 2的CoreFoundation 0x00007fff8e96d8ec - [__ NSArrayM objectAtIndex:] + 252個 3陣列演示0x0000000100001ca8主+ 1592 4 libdyld.dylib 0x00007fff8e8127e1啓動+ 0 5? ?? 0x0000000000000001 0x0 + 1 ) libC++ abi.dylib:終止調用拋出異常

我在做什麼錯?

HELP !!!!!!!

回答

0

array1,array2,array3是NSArray的對象。所以你不能刪除這些數組中的元素。您應該創建這些數組作爲NSMutableArray的對象。

+0

謝謝 - 知道這將是簡單的東西:) –