ios - 从 NSMutableArray 对象属性中删除重复对象?

标签 ios objective-c nsstring nsmutablearray

<分区>

我有一个 NSObject,其属性如下

@property (nonatomic, retain) NSString * destinationid;
@property (nonatomic, retain) NSString * destinationname;
@property (nonatomic, retain) NSString * assetid;
@property (nonatomic, retain) NSString * assetname;
@property (nonatomic, retain) NSString * assetdescription;

在这里,我将其保存在 NSMutableArray 中。

我从服务器获取的数据包含相同的 DestinationName,但其他属性不同。

我想检查一下,如果 Object 的同名已经添加到 NSMutableArray 中,请不要再次添加它。

我尝试使用 innner loops 但没有用 :(

谢谢

最佳答案

这是一种解决方案:

NSArray *originalArray = ... // original array of objects with duplicates
NSMutableArray *uniqueArray = [NSMutableArray array];
NSMutableSet *names = [NSMutableSet set];
for (id obj in originalArray) {
    NSString *destinationName = [obj destinationname];
    if (![names containsObject:destinationName]) {
        [uniqueArray addObject:obj];
        [names addObject:destinationName];
    }
}

关于ios - 从 NSMutableArray 对象属性中删除重复对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20033858/

相关文章:

objective-c - NSURLConnection sendSynchronousRequest - 缺少数据

ios - 用换行符替换多个空格,但保留单个空格

swift - 无法在强制转换中将类型 'String?' 的值转换为类型 'NSString'

ios - 无法演奏非常简单的音调

ios - 如何在三天后触发 uilocalnotification?

ios - 正向地理编码可以在模拟器上运行,但不能在 iPhone 上运行

iphone - UITableView 在 TableView 中间加载单元格。为什么?

objective-c - 如何在 objective-c 中编辑 PDF?

ios - Autolayout 在模拟器上持续存在 - XCode