我正在过滤一个数组,该数组可以有一个值,其中有多个同名模型,只有它们有不同的型号 .
Variables
var modelArray = [model]()
Struct
struct model {
var modelName = String();
var modelNumber = String();
var manufacturer = String();
var phiTypeCode = String();
var phiTypeDesc = String();
}
Filter
var filteredArray = self.modelArray.filter { $0.manufacturer.range(of: manufacturerVar, options: .caseInsensitive) != nil }
这会生成正确的过滤数组,只是由于类似模型具有不同型号的可能性,我试图从 filteredArray
中删除重复项 . 相当新的swift我没有很多经验使结构可以使用建议的解决方案 .
希望这更清楚
1 回答
首先,我尝试在PlayGround中制作样本 .
model
符合protocalEquatable
,如下所示:在上面的代码中,我们假设
modelName
是模型的主键 .最后,您现在可以生成新的唯一数据源 .
例: