swift数组扩展

swift数组移除元素

extension Array {
mutating func removeValue(_ value: AnyObject) {
    
    let arr = self.filter { (e) -> Bool in
        let objc = e as AnyObject
        return !objc.isEqual(value)
    }
    
    self = arr
}
}

swift数组拷贝

// 拷贝协议
protocol Copyable {
associatedtype T

func copy()-> T
}
/// 元素拷贝
extension Array where Element: Copyable {
func ele_copy() -> Array<Element> {
    return self.map { $0.copy() as! Element }
}
}
/// 数组拷贝
extension Array: Copyable {
typealias T = Array

func copy() -> Array<Element> {
    var arr = Array<Element>()
    for ele in self {
        arr.append(ele)
    }
    
    return arr
}

}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容