Instance Methodswift 6.0.1Swift

    merging(_:uniquingKeysWith:)

    Creates a dictionary by merging the given dictionary into this dictionary, using a combining closure to determine the value for duplicate keys.

    func merging(_ other: [Key : Value], uniquingKeysWith combine: (Value, Value) throws -> Value) rethrows -> [Key : Value]

    Parameters

    other

    A dictionary to merge.

    combine

    A closure that takes the current and new values for any duplicate keys. The closure returns the desired value for the final dictionary.

    Returns

    A new dictionary with the combined keys and values of this dictionary and other.

    Use the combine closure to select a value to use in the returned dictionary, or to combine existing and new values. As the key-value pairs in other are merged with this dictionary, the combine closure is called with the current and new values for any duplicate keys that are encountered.

    This example shows how to choose the current or new values for any duplicate keys:

    let dictionary = ["a": 1, "b": 2]
    let otherDictionary = ["a": 3, "b": 4]
    
    let keepingCurrent = dictionary.merging(otherDictionary)
          { (current, _) in current }
    // ["b": 2, "a": 1]
    let replacingCurrent = dictionary.merging(otherDictionary)
          { (_, new) in new }
    // ["b": 4, "a": 3]

    Other members in extension

    Types

    Typealiases

    Type members

    Instance members