Swift中的数组支持+=操作符将一个数组的内容添加到另一个数组中.对于一本字典,有没有一种简单的方法可以做到这一点?

如:

var dict1 = ["a" : "foo"]
var dict2 = ["b" : "bar"]

var combinedDict = ... (some way of combining dict1 & dict2 without looping)

推荐答案

您可以为Dictionary定义+=运算符,例如.,

func += <K, V> (left: inout [K:V], right: [K:V]) { 
    for (k, v) in right { 
        left[k] = v
    } 
}

Swift相关问答推荐

使用简单变量和函数的奇怪行为

为表单部分赋予背景 colored颜色 /渐变

启用完成并发判断以及如何解决警告(续)

Swift 5.10:无法从非隔离的deinit访问属性*,这是Swift 6中的错误''''

在SwiftUI中使用自定义图像填充列表行的正确方法

将matchedGeometryEffect 应用于列表视图内的视图时,列表视图中的项目会受到影响 - SwiftUI

循环字典中的数组

UIView.convert(_ point:to:)的意外行为

协议元类型'SomeProtocol.Type'上无法使用静态成员'currency'

SwiftUI如何能够在Text中使用字符串字面量来创建LocalizedStringKey?

从 Obj-C 函数返回 swift 类的不兼容指针类型

仅当 boolean 为真时才实现方法(application:didReceiveRemoteNotification)

ScreenCaptureKit/CVPixelBuffer 格式产生意外结果

ForEach within List:模式的好处?

快速递归:函数与闭包

SwiftUI 分段 Select 器的问题

如何自己快速编写 Hashable 协议

找不到目标AAA的 SPM 工件 - 仅限 Xcode 13.3

iOS/Swift:如何检测 UITextField 上的touch 动作

Swift UITableView reloadData 在一个闭包中