ios - NSSortDescriptor 没有对我的 NSMutableArray 进行排序?

标签 ios nsmutablearray nsdictionary nssortdescriptor

我有一个 NSMutableArray,其中包含 NSDictionaries。我在 SO 上发现了一个问题,并使用此代码对此 NSMutableArray 进行排序:

NSMutableArray

{
    data =         {
   etc... (for length)
    };
    number = 1;
},
{
    data =         {
       etc... (for length)
    };
    number = 3;
},
{
    data =         {
       etc... (for length)
    };
    number = 4;
},
{
    data =         {
       etc... (for length)
    };
    number = 2;
}

该数组最多包含 80 个子词典。

NSSortDescriptor

NSSortDescriptor *descriptor = [[NSSortDescriptor alloc] initWithKey:@"number"  ascending:YES];
[NSMUTABLEARRAYVAR sortedArrayUsingDescriptors:[NSArray arrayWithObjects:descriptor,nil]];
 NSMutableArray *test;            
 test = [NSMUTABLEARRAYVAR copy];

当我 NSLog“测试”时,我得到与 NSMUTABLEARRAYVAR 相同的顺序???

如果您能帮助解决此问题,我将不胜感激,谢谢!

最佳答案

sortedArrayUsingDescriptors不对数组进行就地排序。它返回一个新排序的数组。

sortUsingDescriptors进行就地排序。

关于ios - NSSortDescriptor 没有对我的 NSMutableArray 进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18625841/

相关文章:

arrays - 用 Swift 修改数组中的对象?

ios - 无法将类型 '[String : String?]' 的值转换为预期的参数类型 '[String : AnyObject?]'

android - 连接 iPhone 和 Android 设备(同一局域网)

ios - UitableView部分中的行数

iphone - NSArrayM 长度 : unrecognized selector sent to instance

cocoa - 如何在 Cocoa 中访问大型 NSDictionary 的特定子集?

iphone - 从 UITableView 中删除部分

ios - 在另一个 UIViewController 中显示缩放的 UIViewController

ios - NSMutableArray 移除 objectAtIndex NSRangeException IOS

objective-c - 将 NSString 转换为键值对