用法一
實例方法
merge(_:
merge(_:uniquingKeysWith:)
將給定序列中的鍵值對合並到字典中,使用組合閉包來確定任何重複鍵的值。
聲明
mutating func merge<S>(
_ other: S,
uniquingKeysWith combine: (Value, Value) throws -> Value) rethrows where S : Sequence, S.Element == (Key, Value
)
當
Key
符合 Hashable
時可用。參數
other
一係列鍵值對。
combine
為任何重複鍵獲取當前值和新值的閉包。閉包返回最終字典所需的值。
詳述
使用 combine
閉包選擇要在更新字典中使用的值,或組合現有值和新值。當鍵值對與字典合並時,combine
閉包會調用遇到的任何重複鍵的當前值和新值。
此示例顯示如何為任何重複鍵選擇當前值或新值:
var dictionary = ["a": 1, "b": 2]
// Keeping existing value for key "a":
dictionary.merge(zip(["a", "c"], [3, 4])) { (current, _) in current }
// ["b": 2, "a": 1, "c": 4]
// Taking the new value for key "a":
dictionary.merge(zip(["a", "d"], [5, 6])) { (_, new) in new }
// ["b": 2, "a": 5, "c": 4, "d": 6]
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
用法二
實例方法
merge(_:
merge(_:uniquingKeysWith:)
將給定的字典合並到這個字典中,使用組合閉包來確定任何重複鍵的值。
聲明
mutating func merge(
_ other: [Key : Value],
uniquingKeysWith combine: (Value, Value) throws -> Value
) rethrows
當
Key
符合 Hashable
時可用。參數
other
要合並的字典。
combine
為任何重複鍵獲取當前值和新值的閉包。閉包返回最終字典所需的值。
詳述
使用 combine
閉包選擇要在更新字典中使用的值,或組合現有值和新值。由於 other
中的 key-values 對與此字典合並,因此使用遇到的任何重複鍵的當前值和新值調用 combine
閉包。
此示例顯示如何為任何重複鍵選擇當前值或新值:
var dictionary = ["a": 1, "b": 2]
// Keeping existing value for key "a":
dictionary.merge(["a": 3, "c": 4]) { (current, _) in current }
// ["b": 2, "a": 1, "c": 4]
// Taking the new value for key "a":
dictionary.merge(["a": 5, "d": 6]) { (_, new) in new }
// ["b": 2, "a": 5, "c": 4, "d": 6]
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相關用法
- Swift Dictionary merging(_:uniquingKeysWith:)用法及代碼示例
- Swift Dictionary makeIterator()用法及代碼示例
- Swift Dictionary min(by:)用法及代碼示例
- Swift Dictionary max(by:)用法及代碼示例
- Swift Dictionary map(_:)用法及代碼示例
- Swift Dictionary allSatisfy(_:)用法及代碼示例
- Swift Dictionary values用法及代碼示例
- Swift Dictionary dropFirst(_:)用法及代碼示例
- Swift Dictionary firstIndex(where:)用法及代碼示例
- Swift Dictionary first(where:)用法及代碼示例
- Swift Dictionary subscript(_:default:)用法及代碼示例
- Swift Dictionary isEmpty用法及代碼示例
- Swift Dictionary reduce(_:_:)用法及代碼示例
- Swift Dictionary suffix(from:)用法及代碼示例
- Swift Dictionary subscript(_:)用法及代碼示例
- Swift Dictionary init(uniqueKeysWithValues:)用法及代碼示例
- Swift Dictionary randomElement()用法及代碼示例
- Swift Dictionary init(grouping:by:)用法及代碼示例
- Swift Dictionary dropLast(_:)用法及代碼示例
- Swift Dictionary updateValue(_:forKey:)用法及代碼示例
- Swift Dictionary removeValue(forKey:)用法及代碼示例
- Swift Dictionary forEach(_:)用法及代碼示例
- Swift Dictionary index(forKey:)用法及代碼示例
- Swift Dictionary keys用法及代碼示例
- Swift Dictionary first用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Dictionary merge(_:uniquingKeysWith:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。