2016-08-25 2 views
0

n 번째 개수의 NSArray가있는 경우 처음 세 요소를 가져온 다음 다음 세 요소를 가져와야합니다.NSArray 요소를 n 번째 개수로 가져 오는 방법은 무엇입니까?

example:- [A,B,C,D,E,F,G] 
result1:- [A,B,C] 
result2:- [D,E,F] 
result3:- [G] 

나는 배열의 처음부터 n 번째 요소까지 각 3 요소를 가져오고 싶었던 n 번째 요소의 배열을 가지고 있습니다.

시도 코드

,

myArr=[[NSMutableArray alloc]initWithObjects:@"k",@"L",@"M",@"N",@"O",@"P",@"Z",nil‌​]; 
NSArray *getData=[myArr subarrayWithRange:NSMakeRange(i, MIN(3, myArr.count))]; 
i=i+3; 
+1

아무 것도 시도하지 않으셨습니까?. – Signare

+0

예 시도했습니다. – techno

+0

myArr = [[NSMutableArray alloc] initWithObjects : @ "k", @ "L", @ "M", @ "N", @ "O", @ "P", @ "Z" 무]; NSArray * getData = [myArr subarrayWithRange : NSMakeRange (i, MIN (3, myArr.count))]; i = i + 3; – techno

답변

1

하면 다음을 시도하십시오.

NSArray *a = @[ @1, @2, @3, @4, @5, @6, @7 ]; 

int start = 0; 
int slice_size = 3; 
while (start < a.count) { 
     NSRange range = NSMakeRange(start, slice_size); 
     if (range.location + range.length >= a.count) { 
       range.length = a.count - range.location; 
     } 

     NSArray *slice = [a subarrayWithRange:range]; 

     NSLog(@"slice: %@", slice); 

     start += slice_size; 
} 
+0

당신은 그것을 못 박았습니다. 그것은 나를 위해 일해 주셔서 감사합니다. – techno