我有一collection
组带有位置 ID 的项目。仓位 ID 的范围是 500。
例如,这collection
(从数据库中检索)由 3 条记录组成,如下所示
Name | PositionID
--------------------
ItemA| 3
ItemB| 9
ItemC| 1
我有一个长度为 500 的数组。
int[] arrayPosition = new int[500]
我需要根据它们的 PositionID 将集合中的每个项目分配到数组中。
Array[0] >> ItemC | 1
Array[1] >> null
Array[2] >> ItemA | 3
Array[3] >> null
Array[4] >> null
Array[5] >> null
Array[6] >> null
Array[7] >> null
Array[8] >> ItemB | 9
Array[9] >> null
....
我的解决方案是使用for
循环读取数组并使用foreach
循环遍历整个数组并collection
相应地分配它们。
for(x=0; x <= Array.Length; x++)
{
foreach(item in collection)
....
}
但是,如果假设集合包含 500 个项目,则意味着系统必须循环 500 * 500 = 250000 次。
有没有更好的方法来做到这一点?