【发布时间】:2017-03-20 13:58:46
【问题描述】:
我有一个 NSArray 或 NSDictionary。我有两个特定的键,我想用它们来对我的数组进行排序。基本上,我目前有两个NSSortDescriptors:
descriptor = [NSSortDescriptor sortDescriptorWithKey:@"averageNote" ascending:NO];
descriptor2 = [NSSortDescriptor sortDescriptorWithKey:@"reviews.@count" ascending:NO];
他们只是根据元素的平均注释对我的数组进行排序,然后根据评论数量排在第二位。
我想结合这两个元素来做出更真实的排名:例如,70% 的平均笔记和 30% 的评论计数。
我怎样才能做到这一点?
【问题讨论】:
-
看看这个问题:stackoverflow.com/questions/805547/…。您可以使用块对数组进行排序,并将平均值和计数值乘以上述百分比并比较结果。
-
太好了,非常感谢。
-
实现此目的的另一种方法是添加一个计算属性,例如
rank并使用它进行排序。
标签: objective-c sorting cocoa nsarray nssortdescriptor