Swiftコレクションの変換術!配列・集合・辞書の相互変換レシピを完全ガイド
生徒
「Swiftで配列や辞書を使っていますが、配列を集合にしたり、辞書に変換したりってできますか?」
先生
「はい、できますよ!Swiftのコレクション型であるArray(配列)、Set(集合)、Dictionary(辞書)は、それぞれ簡単に変換する方法が用意されています。」
生徒
「便利そうですね!具体的にどうやって変換するのか教えてほしいです。」
先生
「それでは、配列と集合、辞書の変換テクニックをひとつずつ丁寧に解説していきましょう。」
1. Array(配列)からSet(集合)へ変換する
配列から集合へ変換すると、重複した値を自動的に取り除くことができます。Setはユニークな値だけを持つため、例えば同じ名前が何度も出てくる場合に便利です。
let namesArray = ["Alice", "Bob", "Alice", "Charlie"]
let namesSet = Set(namesArray)
print(namesSet)
このコードを実行すると、"Alice"が1回にまとめられた集合が得られます。
["Charlie", "Alice", "Bob"]
2. Set(集合)からArray(配列)に変換する
SetをArrayに戻すことで、順番をつけて使いたいときに役立ちます。Setは順序を持ちませんが、Arrayに変換すればインデックス番号を使ってアクセスできます。
let fruitSet: Set = ["Apple", "Banana", "Orange"]
let fruitArray = Array(fruitSet)
print(fruitArray)
順番は保証されませんが、配列として使えるようになります。
3. Array(配列)からDictionary(辞書)へ変換する
配列から辞書に変換するには、配列の各要素が(キー, 値)のペアである必要があります。これを使えば、一覧データを検索しやすく整えられます。
let pairsArray = [("dog", 1), ("cat", 2), ("bird", 3)]
let animalDict = Dictionary(uniqueKeysWithValues: pairsArray)
print(animalDict)
["dog": 1, "cat": 2, "bird": 3]
ここではDictionary(uniqueKeysWithValues:)を使って、配列から辞書を作成しています。
4. Dictionary(辞書)からArray(配列)に変換する
辞書から配列に変換するときは、キーと値のペアをタプルにして配列にします。よくある使い方として、データを一覧表示したいときなどに便利です。
let animalDict = ["dog": 1, "cat": 2, "bird": 3]
let pairsArray = Array(animalDict)
print(pairsArray)
[("dog", 1), ("cat", 2), ("bird", 3)]
このように、辞書の中身を配列として取り出せます。
5. Set(集合)からDictionary(辞書)への変換テクニック
SetからDictionaryに変換するには、まずSetの要素をキーとして、値は必要に応じて指定します。ここでは、各要素に「true」を割り当てた例を紹介します。
let wordSet: Set = ["Swift", "Kotlin", "Java"]
let wordDict = Dictionary(uniqueKeysWithValues: wordSet.map { ($0, true) })
print(wordDict)
["Kotlin": true, "Swift": true, "Java": true]
mapを使って(キー, 値)の形に整形し、それを辞書に変換しています。
6. Dictionary(辞書)からSet(集合)へ変換するには?
辞書の中の「キー」や「値」だけをSetに変換することもできます。例えば、ユニークなキーの一覧を取り出したいときに使えます。
let scores = ["Tom": 80, "Lisa": 90, "John": 75]
let nameSet = Set(scores.keys)
print(nameSet)
このようにscores.keysでキーの一覧を取り出し、それをSetにすることでユニークな名前の集合を作ることができます。
7. Swiftでコレクションを柔軟に扱うコツ
Swiftでは、配列(Array)、集合(Set)、辞書(Dictionary)を目的に応じて変換することで、処理がスムーズになります。
たとえば:
- 重複を取り除きたい → 配列→集合
- 順序を管理したい → 集合→配列
- 検索を高速にしたい → 配列→辞書
- 一覧表示したい → 辞書→配列
これらの変換レシピを覚えておくだけで、Swiftのコレクション操作がとても簡単になります。
Windowsで始めるiPhoneアプリ開発入門|Swiftの基本と仕組みを1時間で攻略
Windowsで始めるiPhoneアプリ開発入門|Swiftの基本と仕組みを1時間で攻略
「iPhoneアプリを作りたいけれど、Macを持っていないから諦めている」そんな方のための画期的な入門講座です。実は、プログラミングの本質を学ぶのに高価な機材は必要ありません。本講座では、Windowsパソコンを使用し、クラウド環境を活用してAppleの最新言語Swift(スウィフト)の基礎を最短距離でマスターします。
Windowsで実現する開発環境
【つくるもの】
ブラウザ上で動作する「スマート・計算ツール」や「データ判定プログラム」をゼロから作成します。変数の扱いや条件分岐など、iPhoneアプリの内部で動くロジックを自分の手で構築する感動を体験してください。
【開発環境】
ブラウザだけでSwiftが動くプロ仕様のオンラインエディタ(Replit等)を使用します。面倒な設定は一切不要。今あるWindows PCで、プロのエンジニアと同じコードを書き始められます。
この60分で得られる3つの理解
OSの壁を越え、クラウドを活用してスマートに学習を開始する「現代的な開発スタイル」を習得します。
iPhoneアプリ特有のデータの扱い方や、Appleが推奨する「安全で美しいコード」の書き方を学びます。
将来的にiOSエンジニアとして副業・転職するために必要な準備や、Mac選びのポイントを伝授します。
※本講座は、将来的にiPhoneアプリ開発で収益化や転職を目指したい未経験者のためのエントリー講座です。マンツーマン形式により、Windows環境ならではの疑問にもその場でお答えし、あなたの理解度に合わせて進行します。
Windowsで始めるiPhoneアプリ開発入門