我有一个 NSDictionary,它包含几个数组,其中有几个字符串。我想将每个数组下的所有字符串放在一个数组中。我怎样才能一次收到所有的字符串?我试过这个:
NSMutableArray *mutarr = [[NSMutableArray alloc] initWithObjects:[self.firstTableView allValues], nil];
NSArray *mySorted = [[NSArray alloc]init];
mySorted = [mutarr sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)];
NSLog(@"First table view values: %@", mySorted);
注意:self.firsttableview 是一个像这样的 NSDictionary:
NSString *path = [[NSBundle mainBundle] pathForResource:@"firstTableView" ofType:@"plist"];
self.firstTableView = [NSDictionary dictionaryWithContentsOfFile:path];
效果:这在 NSLog 中为我提供了一个列表,但它不是按字母顺序排列的。
最佳答案
您正在使用一个对象初始化您的 mutarr,该对象是字典中 allValues 返回的数组。而是试试这个:
NSMutableArray* mutarr = [NSMutableArray array];
for (NSArray* array in self.firstTableView.allValues) {
[mutarr addObjectsFromArray:array];
}
关于ios - 如何使用 NSArray 按字母顺序对 NSDictionary 中的值进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18283680/