OStack程序员社区-中国程序员成长平台

标题: ios - 从数组中删除重复项并保留最后一次出现 - iOS [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 18:05
标题: ios - 从数组中删除重复项并保留最后一次出现 - iOS

我有一个数组,如

(一、二、一、二、三、一、三、二)

我想删除重复项,并仅保留最后出现的项目。我的结果数组应该是:

(一、三、二)

我通过 [NSOrderedSet orderedSetWithArray:array] 实现了删除重复项,但这会保留第一次出现的项目。它给出的结果是(一、二、三),即第一索引、第二索引和第五索引。

我怎样才能只保留最后一次出现,所以我的结果应该是第 6 个索引、第 7 个索引和第 8 个索引?

谢谢!



Best Answer-推荐答案


感谢@Avi 和@Cristik(问题的评论者)的正确方向,实现了以下解决方案及其工作:

NSMutableArray *array = [NSMutableArray arrayWithCapacity:[originalArray count]];
NSEnumerator *enumerator = [originalArray reverseObjectEnumerator];

for (id element in enumerator) 
{
   [array addObject:element];
}

NSOrderedSet *orderedSet =  [NSOrderedSet orderedSetWithArray:array];

/* orderedSet now has has the desired result */

关于ios - 从数组中删除重复项并保留最后一次出现 - iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34715833/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4