🪶

Swiftでmapを使う

に公開

🎁mapを使う場面

mapメソッドは、配列やコレクションの各要素に対して同じ操作を適用し、その結果から新しい配列を生成する場合に適しています。主に、元の配列の各要素を変換して新しい配列を作成したい場合に使用します。以下にmapの使用例を示します。

使用例: 各要素を2倍にする

let numbers = [1, 2, 3, 4, 5]
let doubledNumbers = numbers.map { $0 * 2 }
print(doubledNumbers) // 出力: [2, 4, 6, 8, 10]

JavaScriptだったらこんな感じかな。$0がないから、混乱した💦

let numbers = [1, 2, 3, 4, 5]
let doubledNumbers = numbers.map((number) => number * 2)
console.log(doubledNumbers) // [2, 4, 6, 8, 10]

使用例: 要素を文字列に変換する

let numbers = [1, 2, 3, 4, 5]
let stringArray = numbers.map { "Number: \($0)" }
print(stringArray) // 出力: ["Number: 1", "Number: 2", "Number: 3", "Number: 4", "Number: 5"]

この例では、数値の配列を文字列の配列に変換しています。各要素に対して文字列への変換操作を適用し、新しい配列を生成しています。

使用例: オブジェクトのプロパティを抽出する

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

let people = [Person(name: "Alice", age: 30), Person(name: "Bob", age: 25)]
let names = people.map { $0.name }
print(names) // 出力: ["Alice", "Bob"]

この例では、Personオブジェクトの配列から、各Personのnameプロパティだけを抽出して新しい文字列の配列を生成しています。

これらの例からわかるように、mapは元の配列の各要素を何らかの形で変換し、その結果を新しい配列として取得したい場合に特に有用です。

まとめ

新しい配列を生成したいときは、mapを使いましょう。アプリ開発だと、mapの方が多く使う場面がある気がする。

Discussion