sortedArrayUsingComparator : 메서드 호출을 찾고 계십니까? 이것은 하나의 배열을 취하고 정렬 된 요소가있는 배열을 반환합니다.
다음은 "정렬 순서"필드의 값에 따라 사전을 정렬하는 몇 가지 샘플 코드입니다.
NSComparisonResult (^sortBlock)(id, id) = ^(id obj1, id obj2) {
if ([[obj1 objectForKey:@"sortorder"] intValue] > [[obj2 objectForKey:@"sortorder"] intValue]) {
return (NSComparisonResult)NSOrderedDescending;
}
if ([[obj1 objectForKey:@"sortorder"] intValue] < [[obj2 objectForKey:@"sortorder"] intValue]) {
return (NSComparisonResult)NSOrderedAscending;
}
return (NSComparisonResult)NSOrderedSame;
};
+ (NSArray *) returnSortedArrayByAlpha:(NSArray*) inputArray whichField:(NSString*) whichField {
NSArray * sortedArray = [inputArray sortedArrayUsingComparator:sortBlock];
return sortedArray;
}
안녕, 나는, 죄송하지만이 문장은 이해가되지 않습니다 : 당신은 이러한 호출에 설명서를 읽어야한다 "DICT 1 DICT 2보다 적은 수의 키를 가지고,하지만 둘 다에있는 키는 정확히 동일합니다. " 아마 오타일까요? – amattn
질문이 업데이트되었습니다. 나는 그들이 공유하는 키가 모두 동일한 문자열이지만, dict 2에는 dict 1에없는 키가 있다고 말하고자한다. – Eric