问题标签 [equatable]

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 投票
12 回答
25409 浏览

core-location - 如何比较 CLLocationCoordinate2D

我需要一种比较两个的方法,CLLocationCoordinate2D但是当我尝试使用==它时它不起作用。请有人可以帮助我以最好的方式比较它们吗?

0 投票
3 回答
1933 浏览

swift - Dictionary 如何在 Swift 中使用 Equatable 协议?

为了解决这个问题,我一直在玩一个实现哈希协议的自定义结构。我试图查看等效运算符重载(==)被调用多少次,具体取决于填充Dictionary.

更新

@matt写了一个更简洁的自定义结构示例,它实现了 Hashable 协议并显示了调用频率hashValue==调用频率。我在下面复制他的代码。要查看我的原始示例,请查看编辑历史记录

这会产生结果:

由于 Hashable 使用 Equatable 来区分哈希冲突(我无论如何都假设),我希望func ==()只在存在哈希冲突时被调用。但是,在上面的@matt 示例中根本没有哈希冲突,但==仍在调用。在我的其他强制哈希冲突的实验中(参见这个问题的编辑历史),==似乎被称为随机次数。

这里发生了什么?

0 投票
0 回答
67 浏览

arrays - Swift:'==' 不能在两个 Equatable 操作数之间应用

我使用的是 Swift 1.2,我很难理解为什么这个扩展不能编译。我一定遗漏了一些东西 - T 是 Equatable ,因此我认为我应该能够通过 '==' 运算符进行比较?

0 投票
2 回答
9842 浏览

swift - Swift 协议实现 Equatable

我有以下内容Protocol

我可以使Cacheable工具 Equatable 吗?

当我执行以下操作时:

我收到此错误消息:协议扩展Cacheable不能有继承子句

0 投票
2 回答
2073 浏览

ios - [AnyObject] 数组的快速 indexOf

试图获取数组的索引 ( [AnyObject])。我缺少的部分是什么?

我已经尝试过使用 Swift 1.2 这种方法:

键入“任何对象?”  不符合协议'Equatable' 无法分配给“Int”类型的不可变值?

0 投票
3 回答
210 浏览

swift - 为 PFObject 设置 equatable

在 swift 中设置 equatable 时出现错误

下面我得到以下错误

“PFObject”与协议“Equatable”的冗余一致性

这个错误有什么解决办法吗?

0 投票
3 回答
26877 浏览

ios - 如何创建一组自定义对象 (Swift)?

对于我的 iOS 应用程序,我有一个类似的模型

然后稍后在我ViewController从服务器加载数据时,我将一些人添加到数组中

我现在要做的是将people数组变成 aSet<Person>这样它就不会添加重复项。这是可能的还是我需要改变我的逻辑?

0 投票
0 回答
432 浏览

ios - 快速解析泛型类型约束数组参数中的变量

给定

为什么编译:

但这会产生“无法使用'(NSArray)'类型的参数列表调用'wasCalled'”

一样

使用:Xcode 7 beta 6、Swift 2

0 投票
1 回答
919 浏览

ios - Swift:有没有办法测试对象转换为 AnyObject 是否符合 Equatable?

我有一个具有键属性的对象:

我想检查value从两个不同对象的具有相同键的函数返回的值是否是Equatable. Swift 抱怨是因为Equatable有一个Self引用并且只能在泛型中使用。有没有办法检查AnyObject从函数返回的对象是否value符合Equatable

0 投票
1 回答
1314 浏览

swift - 带参数的 Swift 枚举:如何比较它们?

我有以下枚举:

我试图弄清楚如何编写 Equatable 函数,然后让我比较 Message 枚举。

我发现了一些关于堆栈溢出的类似问题,但我找不到一个可以让我在不必打开每个案例的情况下进行比较的问题。

有没有办法编写一次 equatable 函数并让它工作,即使我不断向这个枚举添加更多案例?