【发布时间】:2021-01-19 07:25:50
【问题描述】:
我正在尝试从我的数组中获取数据
假设我有这样的数据:
[cobaCobaWS.SpecData(lbl1: 1, lbl2: 2, lbl3: 3, lbl4: 4), cobaCobaWS.SpecData(lbl1: 5, lbl2: 6, lbl3: 7, lbl4: 8)]
我正在尝试使用for 循环来访问其中的每个数组,但我不能。看看我下面的代码:
struct SpecData {
var lbl1: Int
var lbl2: Int
var lbl3: Int
var lbl4: Int
}
var txtFieldArray = [SpecData]()
for arr in txtFieldArray {
coreNumber = Double(txtFieldArray[0].lbl1)
machineNumber = txtFieldArray[0].lbl2
userNumber = txtFieldArray[0].lbl3
rdsNumber = txtFieldArray[0].lbl4
}
数组的数量将是动态的,因为用户可以输入他们想要的数字。
我希望我可以像这样把arr 放在里面:
coreNumber = Double(txtFieldArray[arr].lbl1)
machineNumber = txtFieldArray[arr].lbl2
userNumber = txtFieldArray[arr].lbl3
rdsNumber = txtFieldArray[arr].lbl4
之后我想将这些数字放入另一个函数中。所以我希望能够读取数组中的每个数组,但我不能 我在想可能是因为我的数组来自结构? 有人可以帮我吗?
提前谢谢你
【问题讨论】:
-
不清楚你想对数组中的值做什么,到目前为止你得到的答案只是覆盖了看起来非常错误的每次迭代的结果。也许举个例子,比如
lbl1,在你的样本中是第一个 1 然后是 5,你想用 1 和 5 做什么? -
你说得对。我可以继续,但又卡住了。所以可以说我像我的例子一样在数组中有数组。我想从每个数组中获取标签 1,2,3,4 的值并将其处理到另一个
function并计算它们以获得结果。我该怎么做? -
到目前为止,这是我所做的:我创建了
coreNumber、machineNumber、userNumber和rdsNumber等变量。这些将是进入计算函数之前的临时变量。也许我可以制作这样的流程: [[array],[array]] --> 从每个数组中获取值并放入变量中 --> 在函数中计算 --> 输出/结果 -
抱歉有点长,我尽量解释一下
-
那么你应该从循环内部调用函数,
for arr in txtFieldArray { someFunc(core: Double(arr.lbl1), machine: arr.lbl2, user: arr.lbl3, rds: arr.lbl4) }