Re: sort array of dictionaries by multiple critera
Re: sort array of dictionaries by multiple critera
- Subject: Re: sort array of dictionaries by multiple critera
- From: Steve Christensen <email@hidden>
- Date: Wed, 27 Apr 2011 07:17:59 -0700
Either of these would allow you to do what you want for NSArray:
- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr;
- (NSArray *)sortedArrayUsingFunction:(NSInteger (*)(id, id, void *))comparator context:(void *)context;
And these for NSMutableArray:
- (void)sortUsingComparator:(NSComparator)cmptr;
- (void)sortUsingFunction:(NSInteger (*)(id, id, void *))compare context:(void *)context;
In all cases, you're just writing a function or block that compares the two provided objects (dictionaries in your case) as part of the sorting process.
On Apr 27, 2011, at 6:59 AM, Martin Batholdy wrote:
> I have an array of dictionaries.
>
> One dictionary-entry looks like this:
>
> {
> ID = 34;
> counter = 2;
> date = "2011-04-19 15:43:52 +0200";
> title = "test.pdf";
> type = file;
> }
>
> Now I would like to sort my array of dictionaries first by type and then (within the type-dictionaries) by date.
>
> I can sort my array by one critierion with a NSSortDescriptor:
>
> NSSortDescriptor *descriptor;
> descriptor = [[NSSortDescriptor alloc] initWithKey:@"date" ascending:NO];
> [bookmarks sortUsingDescriptors:[NSArray arrayWithObjects:descriptor, nil]];
>
>
> but how can I first "group" the dictionaries by type and then within the types sort them by date?
> (so use two sorting-criteria with a different priority)
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden