import UIKit
extension Array {// 去重
func filterDuplicates<E: Equatable>(_ filter:(Element)-> E)->[Element]{
var result =[Element]()for value inself{
let key =filter(value)if!result.map({filter($0)}).contains(key){
result.append(value)}}return result
}}
// 基础类型去重
let arrays =["1","2","2","3","4","4"]
let filterArrays = arrays.filterDuplicates({$0})print(filterArrays)// model类的去重
let modelArrays =[Model("1"),Model("1"),Model("2"),Model("3")]
let filterModels = modelArrays.filterDuplicates({$0.name})print(filterModels)