我最初有一个我认为唯一的字符串列表,所以我构建了一个字典并将该字符串列表用作值。
示例:[contact1,contact2,contact3]
然而,我意识到字符串不是唯一的,但是2个字符串的组合是。 示例:`[[contact1,contact1],[contact1,contact2],[contact2,contact2] ...]
因为我有2个独特的对象,我想用作字典键,我可以使用字符串数组作为字典键吗?
假设我不能,如果我的字符串不包含逗号,我想我可以合并它们并用逗号分隔。不好主意?
答案 0 :(得分:2)
是:
let x = [["a1", "a2"]:"1", ["b1", "b2"]:"2"]
println("x: \(x)")
let v = x[["a1", "a2"]] as String
println("v: \(v)")
输出:
x: { ( b1, b2 ) = 2; ( a1, a2 ) = 1; } v: 1
答案 1 :(得分:2)
您可以使用任何Hashable
类型作为字典键--Swift的内置Array
类型不可以播放,但由于NSObject
是, Swift数组静默连接到Objective-C数组,您可能会无意中使用NSArray
作为键。
答案 2 :(得分:-1)
我认为这是不可能的。
您可以使用contact1_contact1,contact1_contact2,contact2_contact2