【发布时间】:2015-03-02 21:57:20
【问题描述】:
我有一个这个对象的数组:
NSString *pageNumber;
NSInteger index;
NSString *textValue;
NSString *bookmark;
NSString *GUID;
我想删除具有相同 textValue 和 index 值的重复对象。它不应查看其他属性,而应仅查看这两个属性。
编辑:另外,为了在会话期间保持值相同,我只想为 2 个相同条目选择排序中较低的 GUID。
我以前使用过distinctUnionOfObjects,但它只能在我需要按一个属性过滤重复项时帮助我。
我想到的另一种创造性方法是在数组中创建另一个属性,它是这两个属性的组合,然后对它们执行distinctUnionOfObjects,但它看起来很脏而且很糟糕。
实现此目的最简单、最有效的方法是什么?
【问题讨论】:
-
你看过
NSPredicate吗?NSArray有一个方法可以让你使用谓词,它们应该让你做你想做的事。
标签: ios objective-c cocoa-touch nsmutablearray nsarray