【发布时间】:2017-01-04 02:17:36
【问题描述】:
我目前正在为多个集合进行 foreach 循环,即 Pizza、SideOrder、Drink 和 Gift。如果集合中的任何项目具有相同的 ID 和 DateCreated,我想检查每个集合。我只想 foreach 每个集合的每 n 行,然后是下一行。
以下是我的编码(部分只是因为编码太长)
int count = Pizzas.Count + SideOrder.Count + Drink.Count + Gift.Count;
for (int j = 1; j < count; j++)
{
foreach (var o in Pizzas)
{/*to do something*/ }
foreach (var o in SideOrder)
{/*to do something*/ }
foreach (var o in Drink)
{ /*to do something*/ }
foreach (var o in Gift)
{ /*to do something*/ }
}
我想要的是 j = 1,它应该 foreach 第一行 Pizza、SideOrder 等。然后 j = 2,foreach 第二行.. 等等。
有什么帮助吗?谢谢。
【问题讨论】:
-
用于多个集合,即 Pizza、SideOrder、Drink 和 Gift。 --> 那么,单个
foreach用于多个集合? -
这不是 foreach 的工作方式。只需使用普通的 for 循环和索引。
-
@BagusTesa 我的意思是每个集合都有 foreach。我只想一次做一排
-
@OldProgrammer 我需要制作 Pizzas.ToArray() 吗?
-
我认为你必须想出一个更好的逻辑来实现这个,可能是通过创建一个拥有这些集合和
orderId和orderDAte作为成员的类(让它成为Order)并使用List<Order>进行处理