gpt4 book ai didi

swift - 嵌套的 Swift 字典

转载 作者:搜寻专家 更新时间:2023-10-31 08:19:15 25 4
gpt4 key购买 nike

我想用嵌套在里面的字典来初始化一个字典:

var a = [Int:[Int:Float]]()
a[1][2] = 12

但是我得到一个错误:

(Int:[Int:Float]) does not have a member named 'subscript'

我已经破解了各种其他方法,所有这些方法都遇到了某种问题。

知道为什么这行不通吗?

最佳答案

您可以像这样创建自己的 2D 字典:

struct Dict2D<X:Hashable,Y:Hashable,V> {
var values = [X:[Y:V]]()
subscript (x:X, y:Y)->V? {
get { return values[x]?[y] }
set {
if values[x] == nil {
values[x] = [Y:V]()
}
values[x]![y] = newValue
}
}
}
var a = Dict2D<Int,Int,Float>()
a[1,2] = 12
println(a[1,2]) // Optional(12.0)
println(a[0,2]) // nil

重点是您通过 a[x,y] 而不是 a[x][y]a[x]?[ y].

关于swift - 嵌套的 Swift 字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25129928/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com