Swift 기초 문법 - 32. compactMap

정성윤·2023년 8월 5일
0

Swift 이론

목록 보기
34/64
post-thumbnail

CompactMap

스위프트에서 배열 또는 다른 컬렉션을 변환하거나 필터링하는 데 사용되는 함수 중 하나입니다.
각 요소에 대해 변환 클로저를 실행하고, 변환 결과 중에 nil이 아닌 값들로 이루어진 새로운 배열을 반환합니다.
map 과의 주요 차이점은 compactMap이 nil을 걸러 내고 값을 추출하여 새 배열을 생성한다는 점입니다.

let stringArray = ["1", "2", "3", "four", "5"]
let intArray = stringArray.compactMap { Int($0) }
print(intArray) // 출력: [1, 2, 3, 5]

또한 컬렉션 내부의 옵셔널 값을 추출하고자 할 때에도 유용합니다.

let optionalIntArray: [Int?] = [1, 2, nil, 4, nil, 6]
let nonNilIntArray = optionalIntArray.compactMap { $0 }
print(nonNilIntArray) // 출력: [1, 2, 4, 6]

참고(출처) : 개발하는 정대리, 야곰(Swift 5)

profile
이유있는 스위프트 개발자

0개의 댓글