[swift] 맵 함수의 사용법과 문법

맵 함수는 Swift에서 제공하는 고차 함수 중 하나로, 배열이나 컬렉션의 각 요소에 동일한 연산을 적용하여 새로운 배열을 반환하는 기능을 수행합니다. 이를 통해 간단하게 배열의 각 요소를 변형하고 새로운 배열을 생성할 수 있습니다.

문법

맵 함수의 문법은 다음과 같습니다.

let newArray = array.map({ (element) -> T in
    // 변환이 필요한 연산 수행
    return transformedElement
})

예제

다음은 간단한 예제입니다. 정수로 이루어진 배열의 각 요소를 제곱하여 새로운 배열을 생성하는 예제입니다.

let numbers = [1, 2, 3, 4, 5]
let squaredNumbers = numbers.map({ (number) -> Int in
    return number * number
})

print(squaredNumbers) // [1, 4, 9, 16, 25]

활용 예제

맵 함수는 데이터 변환이 필요한 상황에서 유용하게 사용될 수 있습니다. 아래는 몇 가지 활용 예제입니다.

문자열을 정수로 변환하기

let stringNumbers = ["1", "2", "3", "4", "5"]
let intNumbers = stringNumbers.map({ (stringNumber) -> Int in
    return Int(stringNumber) ?? 0
})

print(intNumbers) // [1, 2, 3, 4, 5]

소수점 자리수 제한하기

let PI = [3.141592, 2.71828, 1.41421356]
let roundedPI = PI.map({ (number) -> Double in
    return round(number * 100) / 100
})

print(roundedPI) // [3.14, 2.72, 1.41]

객체 리스트에서 특정 속성 추출하기

struct Person {
    let name: String
    let age: Int
}

let people = [
    Person(name: "John", age: 25),
    Person(name: "Jane", age: 30),
    Person(name: "Mike", age: 35)
]

let names = people.map({ (person) -> String in
    return person.name
})

print(names) // ["John", "Jane", "Mike"]

참고 자료