swift 如何使用“重复”将所有365 x 24的值设置为0.0?

iibxawm4  于 2023-04-04  发布在  Swift
关注(0)|答案(1)|浏览(79)

此问题在此处已有答案

Same-type constraint 'Element' == 'Array' is recursive(3个答案)
6天前关闭。
我需要一个2D数组:一年中的365天x一天中的24小时,数组单元格值为double。
如果我将其初始化为:

static var daysHoursArray = [[Double]]()

这是正确的吗?我如何使用“重复”将所有365 x 24的值设置为0.0?

static var daysHoursArray = [[Double]](repeating: "0.0", count: 365)

我以为这只会把第一列归零?
当我这样做了,我将如何更新一个特定的单元格?

let testDouble: Double = 1.0
for days in 0...364 {
        for hours in 0...23 {
            daysHoursArray[days, hours] = testDouble
        }
}

似乎有很多一维数组的例子,但我没有发现任何相关的二维数组。你的建议?

k4emjkb1

k4emjkb11#

您可以嵌套repeating调用:

static var daysHoursArray = [[Double]](repeating: Array(repeating: 0.0, count: 24), count: 365)

这将给予你365个数组,每个数组包含24个0.0的值。
要稍后更新特定值,您可以执行以下操作:

daysHoursArray[day][hour] = value

相关问题