【Swift入門】辞書の追加、取り出しなど

辞書とはキーと値のペアを持つ複数の値を格納できるデータ構造のことです。

配列と同じように複数の値を格納できるのですが、異なるのは『キーと値のペアを持つ』という点です。

辞書を作るには

var 変数名 = [
    キー: 値,
    キー: 値,
    キー: 値,
]

と記述します。

実際に辞書を作ってみましょう。

新しくPlaygroundを作って、空にしてください。

辞書の基本

それでは辞書を作っていきましょう。

今回は人の名前をキー、その人の職業を値として辞書を作ってみます。

var occupations = [
    “ヒロシ”: “経営者”,
    “タツヒロ”: “詩人”,
    “ヨシノブ”: “数学者”
]

と記述しましょう。

作った辞書から値を取り出してみましょう。

辞書のキーである『”タツヒコ”』を用いて『”詩人”』という値を取り出します。

print(occupations[“タツヒロ”]!)

と記述しましょう。

辞書型の値を取り出すときは、その値に対応したキーを記述します。

今回取り出したい『”詩人”』という文字列のキーは『”タツヒコ”』なので、

occupations[“タツヒロ”]

と記述しています。

最後の『!』は

辞書から値を取り出すときはオプショナル型になるので、『!』をつけてアンラップしています。

この状態で実行してみましょう。

実行ボタンを押してください。

実行ボタンを押すと意図した文字列が取り出せているのが分かりますね。

辞書に要素を追加

辞書に要素を付け加えたい場合は、

辞書の名前[付け加えたいキー] = 付け加えたい値

と記述します。

例えば先ほど作った辞書『occupations』に『ノブサダ』という名前で職業が『哲学者』の人を追加したい場合は、

occupations[“ノブサダ”] = “哲学者”

と記述します。

実際に追加されたのかコンソールに出力して確かめてみましょう。

print(occupations)

と記述して、実行ボタンを押しましょう。

コンソールを見てみると、ちゃんと要素として追加されているのがわかりますね。

辞書は順序を持たないので、追加された位置が違くても問題ありません。

空の辞書

空の辞書を作りたい場合は

let 定数名 = [キーの型: 値の型]()

と記述します。

例えばキーの型が『String』、値の型が『Int』で名前が『emptyDictionary』という空の辞書を作りたい場合、

var emptyDictionary = [String: Int]()

と記述しましょう。

実際に空の辞書を作れたのかコンソールに出力して確かめてみましょう。

print(emptyDictionary)

と記述して実行ボタンを押しましょう。

実行してみるとコンソールに空の辞書ができているのがわかりますね。