文書   >   Swift   >   Dictionary   >   init(_:uniquingKeysWith:)


汎用イニシャライザ


init(_:uniquingKeysWith:)


結合するクロージャを使用して、重複した全てのキーの値を決定し、与えられたシーケンス内のキー値のペアから新しい辞書を作成します。





宣言


init<S>(_ keysAndValues: S, uniquingKeysWith combine: (Value, Value) throws -> Value) rethrows where S : Sequence, S.Element == (Key, Value)


パラメータ


keysAndValues新しい dictionary に使用すべきキー値のペアのシーケンス。
combine遭遇した重複キーの値で呼び出されるクロージャ。クロージャは、最終的な辞書に必要な値を返します。


議論


重複したキーを持つ可能性のあるキー値のタプルのシーケンスがある場合、このイニシャライザを使用して辞書を作成して下さい。辞書が作成されると、イニシャライザは全ての重複キーの現在値と新しい値を使用して結合したクロージャを呼び出します。結果となる辞書で使用すべき値を返す結合としてクロージャを渡します。クロージャは、2 つの値から選択するか、それらを結合して新しい値を生成するか、エラーを throw することもできます。


以下の例は、重複したキーの最初と最後の値を選択する方法を示しています。


let pairsWithDuplicateKeys = [("a", 1), ("b", 2), ("a", 3), ("b", 4)]

let firstValues = Dictionary(pairsWithDuplicateKeys,
                             uniquingKeysWith: { (first, _) in first })
// ["b": 2, "a": 1]

let lastValues = Dictionary(pairsWithDuplicateKeys,
                            uniquingKeysWith: { (_, last) in last })
// ["b": 4, "a": 3]


以下も見よ





辞書を作成する

















トップへ












トップへ












トップへ












トップへ












トップへ
目次
Xcode の新機能

  • 言語:Swift
  • SDK


    Xcode 10.2+

    フレームワーク

    Swift 標準ライブラリ

  • 宣言
  • パラメータ
  • 議論
  • 以下も見よ












  • トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)