gpt4 book ai didi

arrays - 如何将字典应用于数组以使其正确排序?

转载 作者:行者123 更新时间:2023-11-30 12:02:00 25 4
gpt4 key购买 nike

这是一个 swift Playground ,最终目标是使用 Months: [String] 数组对字典进行排序。现在的代码如下所示:

Class YearlyTemps { 
var Months: [String] = ["January", "February"...]
var Temperatures: [String,(temp1: Int, temp2: Int)] = [:]
func SetMonthlyTemps(month: String, temp1: Int, temp2: Int) -> Void {
Temps [month] = (low, high)
}
func ShowResult() -> Void {
for key in Temps.key{
print(key)
}
for values in Temps.value{
print(values)
}
}
}

当前将字典显示为:

December
November
January

(23, 40)
(20, 55)
(-2, 34)

没有真正的顺序。我需要它按顺序是这样的(一月到十二月,临时工在同一行):

January (-2, 34)    
November (20, 55)
December (23, 40)

我尝试将字典插入数组,但目前还没有成功。我不确定 Months 数组中是否应该有默认值,或者是否应该在 SetMonthlyTemps 函数中填充默认值。

最佳答案

字典不像许多其他语言那样具有 swift 的顺序。如果您有一个名为 monthsArray 的包含所有月份名称的数组,我将对其进行迭代,并使用每个索引处的值作为键来从字典中获取值。

var monthsArray = ["January", "November", "December"]
var tempsDict: [String : (Int, Int)] = [:]

tempsDict["November"] = (11, 11)
tempsDict["January"] = (1, 1)
tempsDict["December"] = (12, 12)

for month in monthsArray {
//Check to make sure dictionary has key
if let temps = tempsDict[month] {
print("\(month): \(temps)")
}
}

关于arrays - 如何将字典应用于数组以使其正确排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47105970/

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