如何按降序按特定属性对自定义对象的 NSArray 进行排序?

Ren*_*dro 1 sorting compare nsarray ios

如何使这段代码按降序排列。这段代码总是按升序给我数组:

NSArray *sortedProductsByStyle = [unsortedProducts sortedArrayUsingComparator: ^(Product *p1, Product *p2) {
        return [p1.productStyle compare:p2.productStyle options:NSNumericSearch];
    }];
Run Code Online (Sandbox Code Playgroud)

我认为使用 NSOrderedDescending 会起作用,但它没有:

NSArray *sortedProductsByStyle = [unsortedProducts sortedArrayUsingComparator: ^(Product *p1, Product *p2) {
        return [p1.productStyle compare:p2.productStyle options:NSNumericSearch | NSOrderedDescending];
    }];
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

Gab*_*lla 5

只是颠倒比较顺序怎么样?

NSArray *sortedProductsByStyle = [unsortedProducts sortedArrayUsingComparator: ^(Product *p1, Product *p2) {
    return [p2.productStyle compare:p1.productStyle options:NSNumericSearch];
}];
Run Code Online (Sandbox Code Playgroud)