我是新來的scala,我試圖重構下面的代碼。我想消除在下面的代碼中使用的「索引」,並循環到數組中獲取數據。什麼是在scala中循環數組的最佳方式
subgroupMetricIndividual.instances.foreach { instanceIndividual =>
val MetricContextListBuffer: ListBuffer[Context] = ListBuffer()
var index = 0
contextListBufferForSubGroup.foreach { contextIndividual =>
MetricContextListBuffer += Context(
entity = contextIndividual,
value = instanceIndividual(index).toString
)
index += 1
}
}
例如,如果變量的值如下:
contextListBufferForSubGroup = ("context1","context2")
subgroupMetricIndividual.instances = {{"Inst1","Inst2",1},{"Inst3","Inst4",2}}
,則前後應該是這樣的:
{
entity: "context1",
value: "Inst1"
},
{
entity: "context2",
value: "Inst2"
},
{
entity: "context1",
value: "Inst3"
},
{
entity: "context2",
value: "Inst4"
}
注:
instanceIndividual可以有更多的元素比contextListBufferForSubGroup中的元素要多。在這種情況下,我們必須忽略instanceIndividual中的最後一個額外元素