【发布时间】:2020-02-19 03:32:34
【问题描述】:
我想检查一个数组中是否已经包含一个项目,所以我喜欢这样:
let fItem = FilterItem(key: String(describing: key), value: valueStr)
if self.filter?.filters?.contains(fItem){
//remove the item if contains, append if not
}
更多信息,self.filter?.filters? 是一个数组:
var filters: [FilterItem]? = []
而FilterItem 是一个结构体:
struct FilterItem {
var key: String;
var value: String;
}
但是 Xcode 强迫我使用 contains(where:..) 而不是 contains() 错误:Missing argument label 'where:' in call。为什么?
【问题讨论】:
-
你需要让你的结构符合 Equatable