【发布时间】:2013-02-13 13:22:21
【问题描述】:
我有一个NSMutableArray,它的对象是实体类对象。
现在我想从中删除不同的对象。考虑以下示例
Entity *entity = [[Entity alloc] init];
entity.iUserId = 1;
entity.iUserName = @"Giri"
[arr addObject:entity];
Entity *entity = [[Entity alloc] init];
entity.iUserId = 2;
entity.iUserName = @"Sunil"
[arr addObject:entity];
Entity *entity = [[Entity alloc] init];
entity.iUserId = 3;
entity.iUserName = @"Giri"
[arr addObject:entity];
现在通过删除重复的 iUserName,我只想要 Array 中的两个对象。我知道迭代的方式,但我想要它而不像predicate 或其他方式那样迭代它。
如果有人知道,请帮助我。
我曾尝试使用[arr valueForKeyPath:@"distinctUnionOfObjects.iUsername"];,但它没有返回完整的对象。
这个问题与之前提出的问题完全不同。先前提出的问题是获取不同的对象是正确的,但它们使用循环&我不想要这个。我希望它来自NSPredicate 或任何其他避免循环的简单选项。
【问题讨论】:
-
"in iphone sdk" - 谢谢!很久没有人正确使用它了(而不是不恰当的“使用 Xcode”术语)。
-
我记得我已经解决了3-4次这种问题。所以永远不要对搜索/谷歌感到害羞。
-
@AKV 我想要通过比较实体类对象中的实体来获得不同的元素。我也想避免 for 循环。是否可以通过谓词或任何其他选项
标签: ios objective-c nsmutablearray