Swift-dictionaries
Swift-辞書
Swift 4 *辞書*は、同じタイプの値の順序付けられていないリストを保存するために使用されます。 Swift 4は厳密なチェックを行うため、誤って誤ったタイプを辞書に入力することはありません。
Swift 4ディクショナリは、 key と呼ばれる一意の識別子を使用して、後で同じキーを介して参照および検索できる値を格納します。 配列内のアイテムとは異なり、*辞書*内のアイテムには順序が指定されていません。 識別子に基づいて値を検索する必要がある場合は、*辞書*を使用できます。
辞書キーは、整数または制限なしの文字列のいずれでもかまいませんが、辞書内で一意である必要があります。
作成したディクショナリを変数に割り当てると、常に可変になります。つまり、アイテムを追加、削除、または変更することで変更できます。 ただし、辞書を定数に割り当てた場合、その辞書は不変であり、そのサイズと内容は変更できません。
辞書を作成する
次の初期化構文を使用して、特定のタイプの空の辞書を作成できます-
次の単純な構文を使用して、キーがInt型になり、関連する値が文字列になる空の辞書を作成できます-
これは、与えられた値のセットから辞書を作成する例です-
シーケンスベースの初期化
Swift 4では、配列(キーと値のペア)から辞書を作成できます。
次の単純な構文を使用して、キーがInt型になり、関連する値が文字列になる空の辞書を作成できます-
これは、与えられた値のセットから辞書を作成する例です-
上記のコード行は、都市をキー、距離を値として辞書を作成します-
フィルタリング
Swift 4では、辞書から値をフィルタリングできます。
上記のコードを実行すると、closeCities辞書が作成されます。
辞書のグループ化
Swift 4では、辞書値のグループ化を作成できます。
次の簡単な構文を使用して、最初のアルファベットに従って辞書の値をグループ化できます。
上記のコードの結果は次のようになります
辞書へのアクセス
あなたは、次のように辞書の名前の直後に角括弧内に取得したい値のキーを渡す添字構文を使用して、辞書から値を取得することができます-
辞書から値を作成、初期化、およびアクセスするには、次の例をチェックしましょう-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
辞書の変更
- updateValue(forKey:)*メソッドを使用して、既存の値を辞書の特定のキーに追加できます。 このメソッドは、ディクショナリの値タイプのオプションの値を返します。 これは簡単な例です-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
次の例に示すように、特定のキーに新しい値を割り当てることにより、辞書の既存の要素を変更できます-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
キーと値のペアを削除
- removeValueForKey()*メソッドを使用して、キーと値のペアを辞書から削除できます。 このメソッドは、キーと値のペアが存在する場合は削除し、削除した値を返します。値が存在しない場合はnilを返します。 これは簡単な例です-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
また、添え字構文を使用して、そのキーに nil の値を割り当てることにより、辞書からキーと値のペアを削除することもできます。 これは簡単な例です-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
辞書の繰り返し
次の例に示すように、辞書のキーと値のペアのセット全体を反復処理するために、 for-in ループを使用できます-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
以下の例に示すように、アイテムのインデックスとその(key、value)ペアを返す* enumerate()*関数を使用できます-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
配列に変換
特定の辞書からキーと値のペアのリストを抽出して、キーと値の両方に対して個別の配列を作成できます。 ここに例があります-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
countプロパティ
以下に示すように、辞書の読み取り専用 count プロパティを使用して、辞書内のアイテムの数を調べることができます-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
空のプロパティ
次のように、辞書の読み取り専用 empty プロパティを使用して、辞書が空かどうかを確認できます-
上記のコードをコンパイルして実行すると、次の結果が生成されます-