【发布时间】:2017-06-02 12:51:39
【问题描述】:
我有一个数组[modelA,modelB,modelC,modelD,modelE],数组中的每个元素都是一个Struct的实例。结构有一个属性“名称”。比如……
modelA.name = "abc"
modelB.name = "efg"
modelC.name = "hij"
modelD.name = "abc"
modelE.name = "efg"
如何将具有相同属性值的元素分组到一个新数组中?即将modelA和modelD放入一个新数组,将modelB和modelE放入另一个数组。
假设原始数组是大。
【问题讨论】:
-
var d[String: [Model]]; for i in array { let m = array.filter { $0.name == i.name }; if m.count > 1 { d[i.name] = m }}会有什么问题? -
stackoverflow.com/questions/31220002/…这解决了我的问题,谢谢大家