2010-04-01 66 views
0

我想問一個問題,我們該如何在一個數組類型的plist中搜索並且具有數組類型的元素。我正在從一個plist中搜索,這是一個字符串元素類型,它的工作正常,但是我無法搜索它何時在plist中有數組元素。在目標c中的二維數組搜索

商祺!

回答

1
- (BOOL)searchArray:(NSArray *)array forObject:(id)object { 
    if ([array containsObject:object]) { 
     return TRUE; 
    } 

    for (id elem in array) { 
     if ([elem isKindOfClass:[NSArray class]]) { 
      if ([self searchArray:elem forObject:object]) { 
       return TRUE; 
      } 
     } 
    } 
    return FALSE; 
} 

將處理一個二維數組以及任何其他深度。

0

你的問題不是很清楚,但如果你正在尋找一種方式來定位一個NSArray中含含的對象(NSString的)NSArrays對象,這裏有一個例子:

NSArray * l20 = [NSArray arrayWithObjects:@"One", @"Two", nil]; 
NSArray * l21 = [NSArray arrayWithObjects:@"Three", @"Four", nil]; 

NSArray * ll = [NSArray arrayWithObjects:l20, l21, nil]; 

for(id l1obj in ll) 
    for(id l2obj in l1obj) 
     if([l2obj isEqualToString:@"Three"]) 
      NSLog(@"Found object three");