Swift filter函数介绍
发布时间:2020-12-14 06:38:36 所属栏目:百科 来源:网络整理
导读:filter用于选择数组元素中满足某种条件的元素。 比如一个金额数组,筛选出金额大于30元素 先看一下传统实现: var filteredArray:[Int]=[] for money in moneyArray{ if (money30){ filteredArray+=[money] } } 我们惟一感兴趣的是 money 30, 下面使用filte
filter用于选择数组元素中满足某种条件的元素。 比如一个金额数组,筛选出金额大于30元素 先看一下传统实现:
var
filteredArray:[Int]=[]
for
money
in
moneyArray{
if
(money>30){
filteredArray+=[money]
}
}
我们惟一感兴趣的是money > 30,下面使用filter来定义同样的逻辑。 Swift中filter在Array类中的定义为: filter(includeElement: (T) -> Bool) -> T[] 以返回true或false的函数includeElement作为参数,对原数组元素调用includeElement时,只有返回true的元素会通过筛选 对数组筛选,我们只需使用
filteredArray=moneyArray.filter({$0>30}){$0 > 30}为筛选闭包,我们忽略了参数名而使用默认参数$0,返回类型隐式推断为Bool 了解了基本用法,下面我们用他来做一点有意思的事情:比如求个交并补集
let numberArray = [10,20,45,32,1,2,3,4,30,55] let numberArray2 = [10,50] print(numberArray.filter{numberArray2.contains($0)}) //交集 print(numberArray.filter{!numberArray2.contains($0)}) //补集 print(numberArray.filter{!numberArray2.contains($0)} + numberArray2) //并集 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |