问题标签 [nsmutableorderedset]

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 投票
0 回答
85 浏览

ios - iOS:无法解释 -[__NSOrderedSetM removeObjectAtIndex:]:索引 0 超出空有序集的范围

我得到-[__NSOrderedSetM removeObjectAtIndex:]: index 0 beyond bounds for empty ordered set了以下代码:

所以,我没有明确地打电话removeObjectAtIndex:,但也许removeObject:adapter会?

这是我不明白的:

  1. 我尝试添加anObject到一组,然后调用removedObject:anObject了两次,没有问题。
  2. 我认为这可能是一个并发问题,两个不同removeObject的线程进入认为它位于位置 1,然后第二个线程失败,但我正在使用dispatch_barrier_sync,并且我不会从其他任何地方的“src”中删除对象。

有什么提示吗?

0 投票
0 回答
57 浏览

swift - NSMutableOrderedSet 函数“contains(_ object: Any)”并不总是调用对象的 isEqual 方法

var entries:NSMutableOrderedSet //包含DataEntry对象

我正在使用这个函数向这个有序集合中添加七个对象:

这是 DataEntry 类:

我要向这个有序集合添加更多对象,但前提是对象还不是有序集合的一部分(因为如果添加了新对象,我想通知相关方)。我正在使用它来添加:

只有有时会调用 DataEntry 的 isEqual 函数,但为什么不总是?这会导致重复。

此外,执行 self.entries.add(entry) 时,isEqual 函数被调用超过七次(10 到 13 次)。为什么?

0 投票
2 回答
46 浏览

ios - 如何检查我的 NSString 是否存在于我的 NSMutableOrderedSet 中?

我收到来自第三方 SDK 之一的响应,现在如何检查我的字符串值是否存在于响应中?我需要与密钥进行比较的friendlyName密钥。

这是我正在使用的代码。

提前致谢。

0 投票
2 回答
1308 浏览

arrays - 如何在本机 Swift 中实现以前称为 NSMutableOrderedSet 的可变有序集泛型类型?

我正在尝试实现一个通用的 Mutable Ordered Set 类型,它需要符合许多协议才能与 Swift 中的 Array 和 Set 行为相同。首先要实现泛型类型元素需要符合,泛型Hashable结构需要符合RandomAccessCollection, SetAlgebra, ExpressibleByArrayLiteral,AdditiveArithmetic和。我还想允许下标访问它添加对,和的支持。RangeReplaceableCollectionMutableCollectionSubSequencePartialRangeThroughPartialRangeUpToPartialRangeFromUnboundedRange

这是我的通用OrderedSet结构声明:

尽管这是一个自我回答的问题,但我非常感谢并鼓励新的答案,对此实施的一些反馈和/或有关如何修复/改进它的建议:

编辑/更新:

sorted方法按预期工作,但sort它的变异甚至没有改变元素顺序。

可变集合

声明突变

函数排序()

当 Self 符合 RandomAccessCollection 且 Element 符合 Comparable 时可用。

我该如何解决?

0 投票
1 回答
52 浏览

ios - 如何在 Swift 中对 NSMutableSet 进行排序?

我正在尝试使用 NSMutableOrderedSet 来存储一些数据,但我想按特定属性对集合进行排序。我试图在网上查看如何使用 NSMutableOrderedSet 的 sort(comarator cmptr: (Any, Any) -> ComparisonResult) 函数,但我不确定如何使用它。我想知道是否有人可以给我一个快速示例,我无法在 Apple 开发人员文档中找到任何教程或示例。

目前我有:

jersey.swift:

视图控制器.swift:

我想按 jersey.number 对集合进行排序,有人能告诉我如何使用