我有两个清单。第一个列表为空,但必须填充一定次数。第二个列表包含已知数量的元素,并且必须在旋转时将这些元素分配给第一个列表,直到第一个列表已满。
这样的事情:
List<Product> productList1 = new List<Product>(); // previously populated list.
List<Product> productList2 = new List<Product>();
for (int i = 0; i < productList1.Count; i++)
{
Product _product = new Product;
_product.ProductName = productList1[i].ProductName;
productList2.Add(_product);
}
int n = productList2.Count;
List<Product> productList3 = new List<Product>;
for (int f = 0; f < n; f++)
{
for (int i = 0; i < 60; i++)
{
productList3.Add(productList2[f];
}
}
// repeat 'f' loop until i arrives at 60
EG。 List2.Count = 4,可以互换地填充List3和List2产品,直到List3总共到达60个产品。
productList2: Product1, Product2, Product3, Product4.
productList3: Product1, Product2, Product3, Product4, Product1, Product2, Product3, Product4, Product1, Product2, Product3, Product4, and so on until reached 60 records.
答案 0 :(得分:0)
如果我理解你的问题,如果原始列表有n个元素,则在新列表的n + 1位置,你需要添加原始列表的第一个元素,在n + 2位置,第二个元素,在2n + 1上再次第一次等等。
所以你可以试试这个
int n = 60; //could be any number
int count = originalList.Count;
for (int i = 0; i < n; i++)
{
newList.Add(originalList[i % count]); //the remainder of the division
}