objective-c - 根据 Objective-C 中的属性从数组中删除重复项

标签 objective-c nsarray unique

我有一个包含自定义对象的数组。每个数组项都有一个名为“name”的字段。现在我想删除基于此名称值的重复条目。

我应该如何实现这一点?

最佳答案

我不知道框架提供了执行此操作的任何标准方法。所以你必须用代码来做。像这样的事情应该是可行的:

NSArray* originalArray = ... // However you fetch it
NSMutableSet* existingNames = [NSMutableSet set];
NSMutableArray* filteredArray = [NSMutableArray array];
for (id object in originalArray) {
   if (![existingNames containsObject:[object name]]) {
      [existingNames addObject:[object name]];
      [filteredArray addObject:object];
   }
}

关于objective-c - 根据 Objective-C 中的属性从数组中删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4007427/

相关文章:

Objective-C 字符串处理问题

ios - 如何使用 NSUserDefaults 动态分配空间?

r - 查找字符串向量的所有唯一组合的幂集

javascript - 如何根据es6中对象的id返回一个唯一对象数组?

postgresql - 为什么 Postgres 在涉及唯一约束的情况下不一致地处理 NULL?

objective-c - 如何为项目中的单个文件禁用 ARC?

objective-c - iOS App 版本升级 - Bundle 内容是否被删除?

objective-c - 从 objective-c 中解析的 NSString 中提取单个值

ios - 无法异步读取 PHAsset 内容

ios - 如何设置文本字段的最大值