在 swift 中将多个值添加到单个键中?
Adding multiple values into a single key in swift?
当我尝试向该键添加多个值时,我的值被我分配给该键的最后一个值覆盖。我尝试在 [String: [String]] 键值对的值 String
之间添加括号。我这样做是为了希望达到向该键添加多个值的效果。
import UIKit
var parent = [String: [String]]()
parent["parent"] = ["Tommy Turner", "Wolfgang Motart"]
parent["parent"] = ["Bobby Bushe"]
print(parent)
// How can I add multiple values into the parent key like this:
// ["parent": "Tommy Turner", "Wolgang Motart", "Bobby Bushe"]
为什么不把[string]合并赋值给key:
var parent = [String: [String]]()
let value = ["Tommy Turner", "Wolfgang Motart"] + ["Bobby Bushe"]
parent["parent"] = value
print(parent) // ["parent": ["Tommy Turner", "Wolfgang Motart", "Bobby Bushe"]]
您正在覆盖此键值对中 "parent" 的键。如果您希望它具有这三个名称,只需将所有三个名称放入数组中即可。
parent["parent"] = ["Name", "name", "nombre"]
如果您要在范围外创建数组,并设置 "parent"
的值
var namesArray = ["Name", "name"]
parent["parent"] = namesArray
namesArray.append("nombre")
它仍然只会打印出["Name", "name"]
。但是,如果您要调用
parent["parent"] = namesArray
同样,它会创建你想要的。
您应该在之前的基础上添加新数组,例如:
var parent = [String: [String]]()
parent["parent"] = ["Tommy Turner", "Wolfgang Motart"]
parent["parent"] = (parent["parent"] ?? []) + ["Bobby Bushe"]
print(parent)
由于parent["parent"]
的类型是字符串数组,您可以使用append函数添加一个或多个元素。试试这个。
var parent = [String: [String]]()
parent["parent"] = ["Tommy Turner", "Wolfgang Motart"]
parent["parent"]?.append("bob") // append one element to become ["Tommy Turner", "Wolfgang Motart", "bob"]
parent["parent"]?.appendContentsOf(["hello", "world"]) // append collection
print(parent["parent"]!) // ["Tommy Turner", "Wolfgang Motart", "bob", "hello", "world"]
当我尝试向该键添加多个值时,我的值被我分配给该键的最后一个值覆盖。我尝试在 [String: [String]] 键值对的值 String
之间添加括号。我这样做是为了希望达到向该键添加多个值的效果。
import UIKit
var parent = [String: [String]]()
parent["parent"] = ["Tommy Turner", "Wolfgang Motart"]
parent["parent"] = ["Bobby Bushe"]
print(parent)
// How can I add multiple values into the parent key like this:
// ["parent": "Tommy Turner", "Wolgang Motart", "Bobby Bushe"]
为什么不把[string]合并赋值给key:
var parent = [String: [String]]()
let value = ["Tommy Turner", "Wolfgang Motart"] + ["Bobby Bushe"]
parent["parent"] = value
print(parent) // ["parent": ["Tommy Turner", "Wolfgang Motart", "Bobby Bushe"]]
您正在覆盖此键值对中 "parent" 的键。如果您希望它具有这三个名称,只需将所有三个名称放入数组中即可。
parent["parent"] = ["Name", "name", "nombre"]
如果您要在范围外创建数组,并设置 "parent"
的值var namesArray = ["Name", "name"]
parent["parent"] = namesArray
namesArray.append("nombre")
它仍然只会打印出["Name", "name"]
。但是,如果您要调用
parent["parent"] = namesArray
同样,它会创建你想要的。
您应该在之前的基础上添加新数组,例如:
var parent = [String: [String]]()
parent["parent"] = ["Tommy Turner", "Wolfgang Motart"]
parent["parent"] = (parent["parent"] ?? []) + ["Bobby Bushe"]
print(parent)
由于parent["parent"]
的类型是字符串数组,您可以使用append函数添加一个或多个元素。试试这个。
var parent = [String: [String]]()
parent["parent"] = ["Tommy Turner", "Wolfgang Motart"]
parent["parent"]?.append("bob") // append one element to become ["Tommy Turner", "Wolfgang Motart", "bob"]
parent["parent"]?.appendContentsOf(["hello", "world"]) // append collection
print(parent["parent"]!) // ["Tommy Turner", "Wolfgang Motart", "bob", "hello", "world"]