问题标签 [nsset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
506 浏览

iphone - 根据属性将对象数组减少为唯一对象

行。

我有一个数组,其中包含由我的核心数据堆栈填充的多个对象。假设每个对象都有一个与其关联的名称、开始日期、结束日期和数量属性

我需要做的是将此数组缩减为仅基于名称的唯一对象(不仅仅是值),这是一个 NSString。

我已经在 for 循环、while 循环和 using 集合中尝试了 isEqual 方法,但我似乎无法弄清楚。

有任何想法吗?


更新:我应该更清楚。基本上我想要做的是获取一个现有数组,并删除具有相同属性值的重复对象,并最终得到一个唯一对象数组。

0 投票
8 回答
95987 浏览

objective-c - 从 NSSet 中获取对象

如果你不能用 objectAtIndex: 从 NSSet 获取对象,那么你如何检索对象?

0 投票
3 回答
64140 浏览

objective-c - 如何从 NSSet 返回 NSMutableArray

我可以把 an 的内容NSSet变成NSMutableArray这样:

编译器会抱怨,因为 [set allObjects] 返回一个NSArraynot an NSMutableArray。这应该如何解决?

0 投票
2 回答
269 浏览

nsmutablearray - 防止表格视图中的重复副本

我有一个通过表格视图显示的 NSMutableArray。问题是当我向这个数组添加对象时,我不想重复。

如果我从 NSMutableArray 创建一个 NSMutableSet,然后将对象添加到 NSMutableSet,然后将其转换回 NSMutableArray,这是否比在添加项目之前通过循环检查 NSMutableArray 是否更有效?

0 投票
3 回答
15976 浏览

iphone - [NSSet allObjects] 每次都会返回一个顺序相同的数组吗?

我有一个从 .NET WebService 返回的自定义对象列表,并使用父实体与 Core Data 的多对多关系存储它们。

我想使用 NSSet 作为 UITableView 的数据源,并在选择一行时将新控制器推送到堆栈上。

使用时[NSSet allObjects]返回的数组是否总是具有相同的顺序?(我猜不是因为集合是无序的)

如果没有,那么我如何使用NSArray *myArray = [mySet allObjects];incellForRowAtIndexPath来获取textLabel单元格的名称,然后再次didSelectRowAtIndexPath将对象分配给即将被推送的 ViewController?

我已经在我的UITableViewDelegate. 我也考虑过NSArray合成并且allObjects只使用一次viewDidLoad来创建,但这会复制内存中的数据

0 投票
1 回答
811 浏览

objective-c - nsarray 中自定义对象 NSString 属性的唯一值

我有一个存储自定义对象的数组。对象是 Venue 类型,其属性定义为 name(包含场地名称)。

现在我想过滤掉具有唯一名称的对象。

这就是我试图做的。

NSMutableArray *uniqueVenues = [[NSMutableArray alloc] initWithArray:[uniqueVenuesSet allObjects]];

运行此程序时出现此错误。

谁能给我一个关于如何去做的指针。

0 投票
2 回答
2065 浏览

iphone - 使用 KVC 查找 NSSet 中的最大值

我试图在这个 coredata 对象的 order 属性中找到最大值:

使用 KVC。我一直在使用Apple 文档作为资源(示例代码中似乎有错误 - 缺少 : 并且 @ 在错误的位置,但也许我遗漏了什么?)

我尝试使用的最新代码如下所示:

我收到以下错误:

[33209:207] *由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:“[<_PFCachedNumber 0xc4a9004> valueForUndefinedKey:]:此类不符合键最大值的键值编码。”

如果答案很明显并且我错过了重点,我很抱歉,但我希望能深入了解我做错了什么;有关此主题的 Apple 文档似乎有些含糊。谢谢!

0 投票
3 回答
2716 浏览

iphone - 将 nsarray 合并到 nsset 中并避免在 iphone 上的 Objective-C 中重复

编辑:更好的例子......

所以我有一个“现有”对象的 NSMutableSet,我想下载 JSON 数据,解析它,并将这些新对象与我现有的对象合并,用新下载的对象更新任何重复的对象。以下是现有对象集的样子:

因此,例如,在合并这个新对象后,id 为 1 的对象现在的得分为 9999,并且一个新的 id 为 4 的对象将被添加到集合中。

我真的想避免为每个新对象循环遍历 NSMutableSet 只是为了检查 @"id" 属性是否存在......我在想我可以使用 addObjectsFromArray 来合并这些新对象,但看起来因为属性不同(例如:得分:9999)它没有将新对象视为集合中的现有对象。

我使用数字作为字符串来简化这个例子。我还想避免使用仅限 iOS SDK 4.0 的功能,因为该应用程序将与 3.0 兼容。

万分感谢!我很感激!

0 投票
1 回答
1472 浏览

objective-c - 比较 NSSet 中的对象和 NSArray 中的对象

我一直在思考这个问题一段时间,但我还不能得到一个简洁有效的解决方案。

问题:

我有一个食谱列表,它是一个 NSArray,每个食谱对象都包含作为 NSSet 对象的成分。数据是一对多的关系,并且来自 coredata。现在还有一个 NSArray 列表,其中包含特定人当前拥有的项目(成分)。

现在,我必须以某种方式将用户当前拥有的项目与食谱中的成分进行比较,并在表格视图中推荐用户食谱,其中包含所有项目、1 项缺失、2 项缺失和 3 项缺失等部分。

你们认为我应该如何解决这个问题。我尝试了一些事情,但每次我最终都会迷失更多。

任何帮助/指针将不胜感激

0 投票
3 回答
1584 浏览

objective-c - 通过单个属性比较 NSSet

我试图确定两个 NSSet 是否“相等”,但不是 isEqualToSet 的意义上的。两个集合中的项是同一个类但不是同一个对象,甚至是对同一个对象的引用。他们拥有一个相同的属性——我们称之为“名称”。

我最好的选择是将这两组进行比较以进行简单的组计数测试,然后是更复杂的 objectsPassingTest: 在一组中的每个项目上,确保同名的项目在另一组中?我希望有更简单的方法来处理这种情况。