Swift 数组的filter 与 compactMap

数组的filter(过滤还是非常有用的、过滤掉不满足条件的元素)

        let arr = [1,2,3,4,5]
        
        // 数组内容的过滤
        let arrNew = arr.filter { (item) -> Bool in
            return item > 2
        }
        print(arrNew)
        
        // 数组的映射
        let arrMap = arr.compactMap { (item) -> Bool in
        
            return item > 2
        }
                
        print(arrMap)
        // 两者的区别在于最终的返回值
        // fillter 的闭包为条件过滤
        // compactMap 的闭包为返回值的类型 两个有区别 当然也可以达到目的 但是要多两行代码 这相比于filter 来说 不如更直接
        
        print(arrMap)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容