Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 对其值可能包含重复项的自定义对象的NSMutableDictionary进行排序_Ios_Sorting_Nsarray_Nsmutabledictionary - Fatal编程技术网

Ios 对其值可能包含重复项的自定义对象的NSMutableDictionary进行排序

Ios 对其值可能包含重复项的自定义对象的NSMutableDictionary进行排序,ios,sorting,nsarray,nsmutabledictionary,Ios,Sorting,Nsarray,Nsmutabledictionary,我有一个NSMutableDictionary,它是由int类型的分子变量和int类型的分母变量组成的“分数”类型的自定义对象。从NSMutableDictionary中提取并放入NSArray后,我能够对所有值进行排序。然而,我刚刚发现了一个新问题。由于我的NSMutableDictionary是“分数”对象的集合,因此这些对象中的某些对象很可能是彼此的重复,这意味着从原始NSMutableDictionary中查找相应的“键”值也会导致问题。我如何克服这个问题?我有一个NSMutableDi

我有一个NSMutableDictionary,它是由int类型的分子变量和int类型的分母变量组成的“分数”类型的自定义对象。从NSMutableDictionary中提取并放入NSArray后,我能够对所有值进行排序。然而,我刚刚发现了一个新问题。由于我的NSMutableDictionary是“分数”对象的集合,因此这些对象中的某些对象很可能是彼此的重复,这意味着从原始NSMutableDictionary中查找相应的“键”值也会导致问题。我如何克服这个问题?我有一个NSMutableDictionary,其中包含用于键的NSString,以及用于值的自定义“分数”对象。我有一个NSArray,它包含这些自定义的“分数”对象,从最大到最小排序。问题是,其中一些对象可能是相同的(例如1/2、1/3、1/3、1/4)。我想知道的是,尽管存在重复项,但如何为其各自的“分数”对象提取每个键


提前感谢所有回复者。

要检索特定对象的所有键,请使用
NSDictionary
allKeysForObject:
方法。

如果字典中有两个
1/3
分数,您的意思是要获取两个(不同的)键吗?正确。如果我有一个名为“Joe”的键,对应值为1/3,另一个名为“Larry”的键,对应值为1/3,如果我有一个分数对象的排序数组,我如何提取两个键,并将每个键与1/3的值相关联?@sydefa然后查看
NSDictionary
的文档。它有一个名为
allKeysForObject:
@H2CO3:非常感谢的方法。我想我已经想出了用这种方法做什么。如果在迭代数组时某个特定对象有多个键,那么将返回一个计数大于1的数组,这意味着我也必须对其进行迭代。我说的对吗?是的,对。[15 chars]