gpt4 book ai didi

arrays - Swift - 将数据加载到结构数组中

转载 作者:行者123 更新时间:2023-11-28 08:39:24 25 4
gpt4 key购买 nike

如何在 Swift 中将数据加载到结构数组中?

以下要求的语法是什么?

struct TEST {
var a = 0
var b = 0
var c = 0
}

var test: [TEST] = []

// Data to load:
// .a 1,2,3
// .b 4,5,6
// .c 7,8,9

更新 1

@pacification 抱歉延迟回复。根据您的更新 1,我有这段代码,它运行时没有错误:

struct TEST {
var a: Int
var b: Int
var c: Int
}

var a: [Int] = [1,2,3]
var b: [Int] = [4,5,6]
var c: [Int] = [7,8,9]

let test: [TEST]

for (index, _) in a.enumerate() {
TEST(a: a[index], b: b[index], c: c[index])
}

但是,我看不到如何将值存储在“测试”数组中。我错过了什么?

最佳答案

你应该使用这个:

struct Test {
var a = 0
var b = 0
var c = 0
}


var test: [Test] = [
Test(a: 1, b: 4, c: 7),
Test(a: 2, b: 5, c: 8),
Test(a: 3, b: 6, c: 9)
]

请注意,struct 具有默认的 init 方法 ( more info here ),因此您无需创建它。


更新

I want to initialize the 'test' structure array with a length of 200

你可以这样做:

var test: [Test] = Array(count: 200, repeatedValue: Test())

I want to enter the data for 'a', 'b' and 'c' using this syntax: [1,2,3, ...] Is this possible?

嗯。 abctype 应该适合您的情况? 数组?


更新 1

// Data to load:
// .a 1,2,3
// .b 4,5,6
// .c 7,8,9

因此,如果您确定abc 是相同长度的数组,您可以这样做:

for (index, _) in a.enumerate() {
Test(a: a[index], b: b[index], c: [index])
}

并且您的所有数据都将被存储。

关于arrays - Swift - 将数据加载到结构数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36785297/

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