Skip to content

Instantly share code, notes, and snippets.

@beelsebob
Created August 26, 2011 19:36
Show Gist options
  • Select an option

  • Save beelsebob/1174235 to your computer and use it in GitHub Desktop.

Select an option

Save beelsebob/1174235 to your computer and use it in GitHub Desktop.
- (NSArray *)chunkifyWithMaxSize:(NSUInteger)size
{
NSArray *r;
NSUInteger c = [self count];
NSUInteger numFullChunks = / size;
NSUInteger lastChunkPosition = size * numFullChunks;
@autoreleasepool
{
NSMutableArray *result = [[NSMutableArray alloc] initWithCapacity:numFullChunks + 1];
for (NSUInteger chunk = 0; chunk < numFullChunks; chunk++)
{
[result addObject:[self subArrayWithRange:NSMakeRange(chunk * size, size)]];
}
if (lastChunkPosition < c)
{
[result addObject:[self subArrayWithRange:NSMakeRange(lastChunkPosition, c - lastChunkPosition)];
}
r = [[result copy] autorelease];
[result release];
}
return r;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment