Swift - filter

2020. 6. 29. 14:26Language/Swift

반응형

filter(_:)

Returns an array containing, in order, the elements of the sequence that satisfy the given predicate.

 

데이터 컨테이너 내부에 값을 걸러서 반환해준다.

 

var dic: Dictionary<Int, Int> = [ 2 : 0, 1 : 0, 3 : 0, 5 : 0, 7 : 0,
                                  6 : 0, 10 : 0, 9 : 0, 4 : 0, 8 : 0]

let descDicA = dic.filter { (dic: Dictionary<Int, Int>.Element) -> Bool in
    return dic.key % 2 == 0
}
// [4: 0, 10: 0, 2: 0, 8: 0, 6: 0]

 

파라미터 및 리턴값 생략

let descDicB = dic.filter { $0.key % 2 == 0 }
// [4: 0, 10: 0, 2: 0, 8: 0, 6: 0]

 

정렬 추가 사용

let descDicC = dic.sorted { $0.key > $1.key }.filter { $0.key % 2 == 0 }
// [(key: 10, value: 0), (key: 8, value: 0), (key: 6, value: 0), (key: 4, value: 0), (key: 2, value: 0)]
반응형

'Language > Swift' 카테고리의 다른 글

Swift - flatMap, compactMap  (0) 2020.07.02
Swift - stride  (0) 2020.07.01
Swift - map  (0) 2020.06.29
Swift - sort, sorted  (0) 2020.06.29
Swift - forEach  (0) 2020.06.29