3天前,我問的問題如何在字符串對象的第二個字元素和排序排序上的NSDictionary比排序上的NSArray給出不同的結果
我得到解決here
但現在我還是堅持到新問題
考慮我有
的NSArray用 - >名稱和
的NSDictionary與相同 - >作爲價值和電子郵件ID爲重點
而且我的NSArray名(NSArray的)含有
"Test Teacher"
"Anonymous"
"Dok Teacher"
和我的NSDictionary包含
"Dok Teacher" --"[email protected]"
"Anonymous" -- "[email protected]"
"Test Teacher" --"[email protected]"
當我需要整理這些陣列和字典我使用上面鏈接給出的方法對它們進行排序
但尾部呃排序我的第二個字
"Anonymous"
"Test Teacher"
"Dok Teacher"
的NSDictionary排序後得到如下
NSArray的數據的值的第二個字
"Anonymous" -- "[email protected]"
"Dok Teacher" --"[email protected]"
"Test Teacher" --"[email protected]"
爲什麼那麼多克老師和測試分選後在使用相同的排序方法後,老師在字典和nsarray中的不同位置。
以及如何讓它們以相同的順序排列數組和字典。
用於排序的NSArray代碼:
我還試圖上名字兩個陣列和字典,然後分選:用於排序的NSDictionary
myArray = [teachersList keysSortedByValueUsingComparator:^NSComparisonResult(id a, id b) {
NSString *firstTeacher2ndWord = [[[((NSString*)a) componentsSeparatedByString:@" "] objectAtIndex:1] lowercaseString];
NSString *secondTeacher2ndWord = [[[((NSString*)b) componentsSeparatedByString:@" "] objectAtIndex:1] lowercaseString];
return [firstTeacher2ndWord compare:secondTeacher2ndWord];
}];
NSLog(@"After %@",myArray);
EDIT
NSMutableArray *sortedArray = [NSMutableArray arrayWithArray:[teachersNames sortedArrayUsingComparator:^NSComparisonResult(id a, id b) {
NSString *firstTeacher2ndWord = [[[((NSString*)a) componentsSeparatedByString:@" "] objectAtIndex:1] lowercaseString];
NSString *secondTeacher2ndWord = [[[((NSString*)b) componentsSeparatedByString:@" "] objectAtIndex:1] lowercaseString];
return [firstTeacher2ndWord compare:secondTeacher2ndWord];
}]];
NSLog(@"After %@",sortedArray);
teachersSrc=[NSMutableArray arrayWithArray:sortedArray];
代碼排序兩個姓氏,但它根本不工作,
用適當的縮進編輯你的問題。 – Tirth
代碼在哪裏? –
爲什麼你要維護兩個不同的集合,數組和字典? – Retro