gpt4 book ai didi

swift - 在 Swift 中使用非可选空数组初始化字典

转载 作者:行者123 更新时间:2023-11-30 10:09:23 26 4
gpt4 key购买 nike

我试图将数组数值数据与列标签关联起来,所以我想我应该使用将字符串映射到 float 数组的字典来对其进行建模。我试图通过用空数组初始化键值来填充字典,但我不断获得可选数组。这是一个例子,

var labels = [ "pine", "elm", "palm" ]
var dframe = [String:[Float]]()
for label in labels {
dframe[label] = [Float]()
}
print(dframe.dynamicType) // --> Dictionary<String, Array<Float>>
print(dframe["pine"].dynamicType) // --> Optional<Array<Float>>

我对为什么初始化感到困惑[Float]() for 循环中生成一个可选数组。如果我说[Float]()!在 for 循环中,然后我收到一条错误消息,指出我“无法强制解开非可选类型 '[Float]' 的值”。有任何想法吗?我只想要一个简单的、非可选的字符串到 float 组的映射。我正在使用 XCode 7.1.1 和 Swift 2.1。谢谢!

最佳答案

当您使用以下方式访问字典时:

let x = dframe["pine"]

编译器不知道你是否向字典传递了有效的键,如果没有,它将返回 nil。可选部分不在数组初始化,而是在字典的值查找中。

关于swift - 在 Swift 中使用非可选空数组初始化字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33877994/

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